Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Pascal - [Pascal]Problema con variabile
Forum - Pascal - [Pascal]Problema con variabile

Avatar
mirco95 (Normal User)
Newbie


Messaggi: 13
Iscritto: 27/01/2012

Segnala al moderatore
Postato alle 20:35
Venerdì, 27/01/2012
Ciao a tutti .
Sto creando un comando che calcola due variabili. Io voglio che se il numero totale e>= di 45 questo numero deve essere moltiplicato per 6, altrimenti deve apparire il normale risultato.
Codice sorgente - presumibilmente Delphi

  1. (*
  2.    Name:Calcolatore
  3.    Author:Mirco_Rizzo
  4.    Description:Calcolatrice
  5.    Date:27/01/2012 19.37
  6. *)
  7.  
  8. Program Calcolatore;
  9.  
  10. Uses
  11.   Crt;
  12.  
  13. Var
  14.   a,b,c,d:Integer;
  15.   e:String;
  16. Begin
  17.  
  18.   ClrScr;
  19.   WriteLn('Benvenuto, inserire primo valore');
  20.   ReadLn(a);
  21.   WriteLn('inerisci secondo valore');
  22.   ReadLn(b);
  23.    val(e,6);
  24.   C:=a+b;
  25.   WriteLn('La somma totale fra i due valori e di, ',c);
  26.   if c>=45 then ReadLn(e)
  27.   d:=c+e
  28.   write(e)
  29.   else
  30.   WriteLn('Essendo un valore maggiore di 45 il numero e stato moltiplicato per 6', d) ;
  31.   Readkey;
  32. End.


Se mi aiutate vi bacio i piedi quando vi puzzano :heehee: :rofl:
Ciao e grazie.. Ah vi seguo da molto, complimenti per tutto. Bye

PM
Avatar
Poggi Marco (Member)
Guru


Messaggi: 969
Iscritto: 05/01/2010

Up
1
Down
V
Segnala al moderatore
Postato alle 22:16
Venerdì, 27/01/2012
Ciao!

Ho letto il tuo programma, e ho notato alcune imprecisioni:
- La variabile e è una stringa, di conseguenza, non è possibile effettuare      direttamente calcoli numerici.  

- Il codice interno al costrutto if, va delimitato da begin ed end.

Ecco il programma corretto:
Codice sorgente - presumibilmente Delphi

  1. Program Calcolatore;
  2.  
  3. Uses
  4.   Crt;
  5.  
  6. Var
  7.   a,b,c,d:Integer;
  8. Begin
  9.  
  10.   ClrScr;
  11.   Write('Benvenuto, inserire primo valore ');
  12.   ReadLn(a);
  13.   Write('inerisci secondo valore ');
  14.   ReadLn(b);
  15.   C:=a+b;
  16.   if C>=45 then
  17.   begin
  18.     d:=c*6;
  19.     WriteLn('Essendo un valore maggiore di 45 il numero e stato moltiplicato per 6 -> ', d)
  20.   end
  21.   else Writeln('La somma totale fra i due valori e'' di, ',c);
  22.   Readkey;
  23. End.


PM
Avatar
()
Newbie


Messaggi:
Iscritto:

Up
0
Down
V
Segnala al moderatore
Postato alle 21:31
Venerdì, 27/01/2012
Allora: tanto per cominciare mancano alcuno informazioni quali:
- Si compila?
- Dove sta l' errore?
- tu dici che se il risultato è maggiore o uguale a 45 devi MOLTIPLICARLO per 6, ma alla fine dove controlli il valore della variabile con il risultato, nel caso sia >= 45 tu lo SOMMI per 6
- val cosa fa?
Quando avrai risolto i miei dubbi potrò aiutarti ma non prima di allora.....

Ciao. - mirco95 - 27/01/12 21:37
Scusa per il doppio post,allora - mirco95 - 27/01/12 21:38
Non mi fa commentare. Scusate la super mia cretinagine ma apro un post e non piu una domanda mi sa che è meglio! - mirco95 - 27/01/12 21:40
PM