I concetti alla base penso di averli compresi (sicuramente in maniera poco approfondita)...
Pe quanto riguarda la parte grafica e l' interazione fra utente e app penso di aver sistemato praticamente tutto (adesso vi farò degli esempi per spiegarmi meglio).
questo è il codice che ho scritto nel file ViewController.m:
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
valoreA = 0;
valoreB = 0;
valoreC = 0;
risultato = 0;
valoreK = 1;
valoreN = 0;
funzioneF = 0;
funzioneG = 0;
// Do any additional setup after loading the view, typically from a nib.
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (IBAction)Calcola:(id)sender {
valoreA = ([TextFieldA.text floatValue]);
valoreB = ([TextFieldB.text floatValue]);
valoreC = ([TextFieldC.text floatValue]);
label1: {
funzioneF = (valoreK%10)+ ((valoreK/10)%10) + ((valoreK/100)%10) + ((valoreK/1000)%10);
goto label2;
}
label2: {
if (funzioneF < valoreB) {
goto label3;
}
else
funzioneG = (valoreK%10)+ ((valoreK/10)%10) + ((valoreK/100)%10) + ((valoreK/1000)%10);
funzioneF = funzioneG;
goto label3;
}
label3: {
if (funzioneF == valoreC) {
valoreN += 1;
goto label4;
}
else
goto label4;
}
label4: {
if (valoreK <= valoreA) {
valoreK += 1;
goto label2;
}
else
goto label5;
}
label5: {
risultato = valoreN/valoreA;
}
Risultato.text = [NSString stringWithFormat:@"%f", risultato];
[TextFieldA resignFirstResponder];
[TextFieldB resignFirstResponder];
[TextFieldC resignFirstResponder];
}
- (IBAction)FineEditing:(id)sender {
[TextFieldA resignFirstResponder];
[TextFieldB resignFirstResponder];
[TextFieldC resignFirstResponder];
}
@end
Però non fa quello che vorrei (molto probabilmente non ho capito come usare i comandi "goto" e i "label"... oppure sbaglio qualcos'altro, non saprei)!
Se provo a scrivere codici più semplici come:
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
valoreA = 0;
valoreB = 0;
valoreC = 0;
risultato = 0;
// Do any additional setup after loading the view, typically from a nib.
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (IBAction)Calcola:(id)sender {
valoreA = ([TextFieldA.text floatValue]);
valoreB = ([TextFieldB.text floatValue]);
valoreC = ([TextFieldC.text floatValue]);
risultato= (valoreA+valoreB)/valoreC
Risultato.text = [NSString stringWithFormat:@"%f", risultato];
[TextFieldA resignFirstResponder];
[TextFieldB resignFirstResponder];
[TextFieldC resignFirstResponder];
}
- (IBAction)FineEditing:(id)sender {
[TextFieldA resignFirstResponder];
[TextFieldB resignFirstResponder];
[TextFieldC resignFirstResponder];
}
@end
Funziona perfettamente!
e anche comandi tipo:
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
valoreA = 0;
// Do any additional setup after loading the view, typically from a nib.
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (IBAction)Calcola:(id)sender {
valoreA = ([TextFieldA.text floatValue]);
funzioneF = (valoreA%10)+ ((valoreA/10)%10) + ((valoreA/100)%10) + ((valoreA/1000)%10);
risultato = funzioneF
Risultato.text = [NSString stringWithFormat:@"%f", risultato];
[TextFieldA resignFirstResponder];
[TextFieldB resignFirstResponder];
[TextFieldC resignFirstResponder];
}
- (IBAction)FineEditing:(id)sender {
[TextFieldA resignFirstResponder];
[TextFieldB resignFirstResponder];
[TextFieldC resignFirstResponder];
}
@end
funziona correttamente...
Cosa sto sbagliando?