Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    28

    Errore In Un File Di Turbo Pascal... Aiuto??!!!!!

    allora salve a tutti sono nuovo e ho bisogno di una mano.. spero che qualcuno di voi riesca ad aiutarmi! ecco il mio problema: ho scritto il seguente codice sorgente in pascal (compilatore TP7) ma mi da un errore.. qualcuno di voi riesce a darmi una mano.. perfavore.!!!!!!
    ecco il file sorgente:

    program pizza;
    uses crt;
    var number : integer;
    size : string[1];
    total : real;
    begin
    clrscr;
    write(' inserire il numero delle pizze! ');
    readln(number);
    write(' inserire la taglia della pizza: ');
    writeln(' Small 4.50 ');
    writeln(' Medium 6.00 ');
    writeln(' Large 7.50 ');
    write(' inserire la tua scelta(s,m or l); ');
    readln(size);
    if size = 's' then total := number = 4.50
    else if size = 'm' then total := number = 6.00
    else if size = 'l' then total := number = 7.50
    else write(' la scelta inserita non è valida ');
    writeln;
    write(numero, ' pizza costa,');
    readln;
    end.

    P.S: per una mano intendo la risoluzione del problema cioè farmi funzionare il programma!
    GRAZIE IN ANTICIPO!!!!!!!!!!!

  2. #2

    Re: Errore In Un File Di Turbo Pascal... Aiuto??!!!!!

    Originariamente inviato da Ricky_13
    ho scritto il seguente codice sorgente in pascal (compilatore TP7) ma mi da un errore..
    L'errore dobbiamo indovinarlo?

  3. #3
    Utente di HTML.it L'avatar di Metflar
    Registrato dal
    Apr 2007
    Messaggi
    790
    non conosco pascal ma la variabile numero non esiste nel tuo codice
    conoscenze: C/C++, Java, PHP, Python
    [No PM tecnici o di qualsiasi genere]

  4. #4
    ma mi da un errore.
    Quale errore? Non hai neanche formattato il codice con il tag [CODE]...
    "Se riesci a passare un pomeriggio assolutamente inutile in modo assolutamente inutile, hai imparato a vivere."

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    28

    scusate

    avete ragione mi sono dimenticato di dirvi l'errore...
    allora quando clicco su run mi dice... error 26:type mismatch e posiziona il "puntatore" sul primo ELSE
    comunque io sono all'inizio della programmazione in Turbo Pascal e vi chiedo scusa per la mia ignoranza ma non so ancora molto... cosa vuol dire "formattare il codice con il tag [CODE]"

    P.S: questo codice sorgente lo ho copiato da un video che ho trovato su internet.. e comincio anche io a capirlo...

  6. #6
    questo codice sorgente lo ho copiato da un video che ho trovato su internet
    Se non hai apportato alcuna modifica al sorgente ti consiglio di cancellare il video, il codice è sbagliato.

    Prova a chiederti cosa dovrebbe fare la riga:

    total := number = 4.50

    Inoltre nell'ultima chiamata alla funzione write hai sostituito la variabile number con numero. Ti consiglio di gestire gli IF/ELSE all'interno di un ciclo, in modo da proseguire con la visualizzazione del totale SOLO nel caso di scelta valida.
    "Se riesci a passare un pomeriggio assolutamente inutile in modo assolutamente inutile, hai imparato a vivere."

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    28

    risposta

    ...il video non lo ho postato io e non posso cancellarlo... (sarà stato uno sciocco)

    secondo me la riga if size = 's' then total := number := 4.50 dovrebbe stampare sul lo schermo il numero 4.50 solo se il valore precedentemente inserito ovvero size è uguale a "s" cioè small se no grazie alla riga else if size = 'm' then total := number := := 6.00 si stamperebbe sullo schermo il valore 6.00 se il valore precedentemente inserito ovvero size è uguale a m cioè medium, e così via...

    il compito del programma è quello di una cassa (da quello che ho capito) perchè ti dice quanto costano x pizze di y taglia

    quindi secondo te dovrei togliere la riga else write(' la scelta inserita non è valida '); ok lo farò


    ultima cosa: dato che mi sembra che tu sia un esperto del Pascal mi puoi spiegare la differenza tra "write" e "writeln" ???

    grazie in anticipo !!!

  8. #8
    Ho dato una veloce ripulita al codice (si può migliorare ma devo prepararmi per la serata):

    codice:
    program pizza;
    
    uses crt;
    
    var 
        number: integer;
        size: char; {Una stringa formata da un solo carattere è un CHAR}
        total: Real;
    
    begin
        total := 0;
        clrscr;
        Write(' Inserire il numero delle pizze: ');
        Readln(number);
        Writeln(' Inserire la taglia della pizza: ');
        Writeln(' Small 4.50 ');
        Writeln(' Medium 6.00 ');
        Writeln(' Large 7.50 ');
    	repeat {Con questo repeat eviti errori di digitazione dell'utente}
        Write(' Inserire la tua scelta(s,m or l); ');
        Readln(size);
        if size = 's' then 
            total := number * 4.50
        else if size = 'm' then 
            total := number * 6.00
        else if size = 'l' then 
            total := number * 7.50
        else 
            Write(' la scelta inserita non è valida ');
        until total > 0;
    	Writeln;
        Write(number, ' pizze costano ', total:3:2); {Stampa correttamente il totale}
        Readln;
    end.
    mi puoi spiegare la differenza tra "write" e "writeln" ???
    Sul tuo libro non viene spiegata tale differenza?!

    ...il video non lo ho postato io e non posso cancellarlo... (sarà stato uno sciocco)
    Mi riferivo al fatto di cancellarlo dal tuo disco, dalla tua memoria, dalla tua vista...

    secondo me la riga if size = 's' then total := number := 4.50 dovrebbe stampare sul lo schermo il numero 4.50
    E come potrebbe stampare qualcosa quella riga?! E' sbagliata perché contiene 2 assegnazioni, peraltro tra tipi di dato incompatibili.
    "Se riesci a passare un pomeriggio assolutamente inutile in modo assolutamente inutile, hai imparato a vivere."

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    28

    Caspita... farò tesoro delle tue nozioni!

    UAOH... c'erano parecchi errori... cmq grazie mille sei stato davvero in gamba!
    ok ora me lo guardo bene e lo analizzo!

    io non ho un libro.. lo studio sulla programmazione che sto facendo è da autodidatta non ho mai avuto un insegnante..(sighh)

    ah ho provato il file è funziona davvero bene..perfettamente..ora lo sistemo un pò(graficamente)

    arrivederci..anzi arrisentirci e buona serata!

  10. #10
    io non ho un libro
    Male, molto male. Non si può imparare a programmare senza un valido supporto didattico. Non ha alcun senso cercare di "far funzionare" codice preso chissà dove, scritto da chissà chi e chissà come. Procurati un buon libro...
    "Se riesci a passare un pomeriggio assolutamente inutile in modo assolutamente inutile, hai imparato a vivere."

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.