2011-10-19 3 views
0

Si nous avons deux tableaux verticaux, l'un est v0 et l'autre est v1, et nous devons inviter l'utilisateur à entrer une valeur de tension en volts. En utilisant cette valeur, trouver la tension la plus proche dans v0 et afficher de manière clairement étiquetée la valeur de distance correspondant à cette tension . S'il y en a deux également proches, affichez le premier. Comment puis-je obtenir ce Merci à l'avanceComment créer un code pour faire correspondre

Répondre

3

Voici un exemple:

%# data 
v0 = randn(100,1); 
v1 = rand(100,1); 

%# prompt user for input 
val = input('Enter a voltage value in volts : ', 's'); 
val = str2double(val); 
if isnan(val), return, end 

%# find closest match 
[dist,ind] = min(abs(v0-val)); 
fprintf('Closest voltage = %g\n', v0(ind)) 
fprintf('Distance to closest voltage = %g\n', dist) 
fprintf('The closest voltage was found at position %d\n', ind) 

Un échantillon analysé:

Enter a voltage value in volts : 0.54 
Closest voltage = 0.548403 
Distance to closest voltage = 0.00840294 
The closest voltage was found at position 31 

Avec un peu plus d'effort, vous pouvez créer une vie décente à la recherche GUI pour cette application .. Je vais vous laisser comme un exercice :)

GUI

Questions connexes