2012-01-27 1 views
5

Sto provando a creare un'applicazione che risolva la formula quadratica nella riga di comando Objective-C. Il mio codice finora è:Utilizzo dell'input dell'utente nell'utilità della riga di comando Objective-C Foundation

#import <Foundation/Foundation.h> 

int main (int argc, const char * argv[]){ 

double a, b, c, sol1, sol2; 

NSLog(@"Welcome to the quadratic solver"); 

NSLog(@"Please enter the value of a"); 
scanf("%f", &a); 

NSLog(@"Please enter the value of b"); 
scanf("%f", &b); 

NSLog(@"Please enter the value of c"); 
scanf("%f", &c); 

sol1 = (-b + sqrt((double)pow(b,2) - 4 * a *c))/2 * a; 
sol2 = (-b - sqrt((double)pow(b,2) - 4 * a *c))/2 * a; 

NSLog(@"If a is: %f, b is %f, and c is %f.", a, b, c); 

NSLog(@"Solution one is: %f", sol1); 
NSLog(@"Solution two is: %f", sol2); 

}

Ma la mia uscita non riceve alcuna informazione.

2012-01-26 17:23:53.585 test[4595:707] Welcome to the quadratic solver 
2012-01-26 17:23:53.588 test[4595:707] Please enter the value of a 
1 
2012-01-26 17:23:56.030 test[4595:707] Please enter the value of b 
3 
2012-01-26 17:23:56.558 test[4595:707] Please enter the value of c 
-10 
2012-01-26 17:23:58.670 test[4595:707] If a is: 0.000000, b is 0.000000, and c is 0.000000. 
2012-01-26 17:23:58.672 test[4595:707] Solution one is: -0.000000 
2012-01-26 17:23:58.672 test[4595:707] Solution two is: -0.000000 

Qualsiasi input è molto apprezzato!

+0

Provare con l'identificatore di formato '% e'. – Mahesh

risposta

4

Si hanno a digitare incoerente ... si esegue la scansione in% f, quindi è necessario dichiarare:

float a, b, c, sol1, sol2; 

tuo programma funziona allora bene sulla mia macchina.

+0

Fantastico! Grazie mille per il vostro aiuto! Questo ha risolto il mio problema! – user1172534