Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 25
  1. #1
    Utente di HTML.it L'avatar di AR64S-H
    Registrato dal
    Jun 2002
    Messaggi
    568

    [Turbo Pascal] Come gestiri i tipi di file

    Allora sto facendo questo programma in TP

    ---------------

    program numero;
    uses crt;
    var n,l,s:integer;
    begin
    clrscr;
    writeln('Inserisci il numero');
    readln(n);
    if (n/1=n) then
    begin
    writeln('inserisci il secondo numero da sommare');
    readln(l);
    if (l/1=l) then
    begin
    s:=l+n;
    writeln('la somma Š ',s);
    readln;
    end
    else
    begin
    clrscr;
    writeln('Inserisci il numero, prima non lo hai inserito o era un carattere non numerico');
    readln(n);
    end;
    end;
    end.

    --------

    Vorrei fare in modo che se il carattere inserito da tastiera non è un numero ma una lettera ad esempio scriva a video il messaggio che il tasto premuto era una lettera. Vorrei sapere inoltre come verificare se il tasto premuto è ESC. In delphi lo so fare in TP sinceramente non so che comandi usare.
    Mi aiutate voi
    Grazie
    CIao

  2. #2
    Utente di HTML.it L'avatar di AR64S-H
    Registrato dal
    Jun 2002
    Messaggi
    568
    up

  3. #3
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,290
    Hai provato ad utilizzare un insieme (set) letterale?

    Una scrittura di questo tipo:

    codice:
    if not(C in ['0'..'9']) then.........
    Crei al volo un set letterale che contiene tutti i caratteri numerici e verifichi se il carattere non corrisponde a tale insieme (quindi non è valido).

    Per il tasto ESC, come fai a gestirlo avendo come input un ReadLn?

    Scusa, ma le mie conoscenze di Turbo Pascal svaniscono nei ricordi...

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  4. #4
    Utente di HTML.it L'avatar di AR64S-H
    Registrato dal
    Jun 2002
    Messaggi
    568
    non c'è un modo più semplice del set? Io sinceramente il set non lo ricordo ma il problema è che devo creare un programma per i miei amici che non conoscono niente di programmazione. Sto facendo un corso di programmazione in TP nella mia classe.

  5. #5
    Utente di HTML.it L'avatar di AR64S-H
    Registrato dal
    Jun 2002
    Messaggi
    568
    up

  6. #6
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,290
    Un modo alternativo per validare il carattere consiste nel ricavare il suo codice ASCII tramite la funzione Ord e confrontarlo con i codici corrispondenti ai caratteri ammessi per l'input con un if o con un case...anche se a mio avviso è una soluzione meno intuitiva e complicata rispetto all'uso del set.

    E poi...non sarebbe un buon pretesto per introdurre l'uso degli insiemi nel tuo corso?

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  7. #7
    Utente di HTML.it L'avatar di AR64S-H
    Registrato dal
    Jun 2002
    Messaggi
    568
    Mi faresti un esempio perfavore. Il set ci rinuncio perchè il professore mi ha detto di non spiegarlo per non entrare nelle cose complicate. Non vuole vedere nemmeno un piccolo array.
    Ciao Grazie

  8. #8
    Prova un po' questo:

    Fammi sapere:



    program prova;
    uses crt;
    var tasto:char;
    begin
    repeat
    writeln('Premi [ESC] per uscire');
    tasto := readkey;
    until (tasto = chr(ord(27)));
    end.

    Hanno rapito Berlusconi e chiedono un risarcimento di 10 milioni di euro, altrimenti gli danno fuoco. Partecipa anche tu... abbiamo già raccolto 500 litri di benzina...

    Chi vuole intendere INTENDA, gli altri IN ROULOTTE

  9. #9
    Utente di HTML.it L'avatar di AR64S-H
    Registrato dal
    Jun 2002
    Messaggi
    568
    Ti ringrazio per l'aiuto questo funziona ma non mi serviva proprio questo. Se leggi sopra mi serviva pure sapere se è un numero o no. Il problema è che se preme un tasto e io voglio fargli controllare con ord che tasto è non me lo permette perchè la variabile essendo in integer va in errore .Il problema è anche che ai miei compagni non posso spiegare nè il while, nè il for, nè il repeat solo l'if, perchè il prof me lo ha proibito. È un pò complicata come situazione-. Aiutatemi perfavore. Io avevo pensatoo a fargli controllare il carattere premuto leggendo prima il valore inserito e poi verificando che cos'era ma mi da sempre errore la variabile.
    Aiutatemi
    Grazie
    Ciao

  10. #10
    Utente di HTML.it L'avatar di AR64S-H
    Registrato dal
    Jun 2002
    Messaggi
    568
    up

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 © 2024 vBulletin Solutions, Inc. All rights reserved.