27/10/06 17:27
attiliof
Saluto tutti e mi presento, sono un vecchio di 51 anni ma vorrei avvicinarmi a questo mondo della programmazione ho letto molto, grazie a voi ed a questo sito in particolare...
Vengo al problema non riesco a schiodarmi da questo errore del compilatore"Errore 122"
incollo qui la procedura sperando in una vostra gentilezza saluto e ringrazio
PROGRAM potenza;
USES crt;
VAR a,b,c,i:INTEGER;
BEGIN
WRITELN('Inserisci un numero');
READLN(A)
WRITELN(' Inserisci esponente ');
READLN(B);
FOR I:= 1 TO b DO
c:=a*a;
END;
WRITELN('Il risultao della potenza è ' ,c);
READLN;
END.
aaa
28/10/06 17:23
attiliof
Grazie, ho eseguito le modifiche suggerite ed ora non ci sono errori ma non mi fornisce il risultato finale della potenza...ho fatto tanti tentativi ma se non arriva un altro suggerimento non mi schiodo... ora la procedura è questa:
PROGRAM potenza2;
USES crt;
VAR a,b,c,i:INTEGER;
BEGIN
clrscr;
WRITELN ('Inserisci un numero');
READLN;
WRITELN ('Inserisci esponente');
READLN;
for I := 1 to b do
c:=a*a;
WRITELN('Il risultao della potenza è ');
READLN;
END.
Grazie per l'incoraggiamento
aaa
28/10/06 18:03
attiliof
Grazie per l'abnegazione che mi dedichi, è vero che avevo tolto troppo...che scemo che sono!
Ora sembra funzionare ma non completa il ciclo "for" mi fa solo una moltiplicazione, infatti se inserisci un numero alla seconda, funzia ma se fai un numero elevato alla tre mi rende come risultato sempre alla seconda...boooh...
Ciao e grazie infinite
Ultima modifica effettuata da attiliof 28/10/06 18:53
aaa
28/10/06 19:03
Anonymous
Quello perchè è sbagliata l'istruzione nel ciclo for to do... infatti con quell'isgtruzione gli si dice che deve fare tante volte quanto il numero dell'esponente la moltiplicazione a*a ad esempio se deve fare 4^4, il computer ti esegue ripetutamente per quattro volte il prodotto 4*4 che verrà sempre 16!.. se vuoi che invece la prima volta ti faccia 4*4, la seconda 16*4 e così via ci devi mettere for i:=1 to b do C=C*a;
Però prima devi inizializare la variabile C impostandola al valore 1:
dopo clrscrn metti quindi c:=1
fammi sapere... ora dovrebbe essere tutto ok!!!
Scusa, ma prima non avevo fatto caso se c'erano errori di calcolo, avevo solo controllato la sintassi e quindi non me ne ero accorto.. cmq ora non dovrebbero esserci problemi!! ciao
Ultima modifica effettuata da Anonymous 28/10/06 19:04
aaa
28/10/06 20:38
attiliof
Sei un GRANDE!!!
Grazie infinite davvero,
ti potrà sembrare esagerato ma non lo è per niente, cominciavo a disperare ed a farmi prendere dalla certezza di non poter proseguire ma invece mi hai ridato la carica giusta per continuare ad applicarmi in questo mio nuovo interesse.
Grazie ancora ed auguroni sinceri
Attilio
aaa
28/10/06 21:02
Anonymous
Postato originariamente da attiliof:
Grazie infinite davvero,
ti potrà sembrare esagerato ma non lo è per niente
si, lo capisco lo capisco..
cmq noi siamo tutti qui apposta per aiutare (e ovviamente per essere aiutati) e ci fa piacere che i suggerimenti dati riescono a risolvere i problemi di altri... l'importante è che si capisca dove si sbaglia e si capiscano i suggerimenti dati evitando di copiare e incollare solo la parte di codice senza capire il perchè deve essere in quel modo piuttosto che in un altro... Se si riesce a capire il perchè allora è un passo in più ogni volta nel mondo della programmazione
Ciao!!
Ultima modifica effettuata da Anonymous 28/10/06 21:05
aaa