Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it L'avatar di stino90
    Registrato dal
    Feb 2007
    Messaggi
    165

    [FORTRAN] Uso di espressioni logiche

    Ciao gente, mi chiedevo cosa c'è che non va in questo programma in Fortran, il codice è il seguente:

    codice:
    ! Scopo: uso di espressioni logiche per la classificazione di triangoli  PROGRAM triangolo_3 ! Questo programma legge tre valori reali che rappresentano le lunghezze dei lati di un triangolo e lo classifica come equilatero, iscoscele o scaleno ! stampando un opportuno messaggio. NOTA: non effettua la verifica che i tre valori rappresentino effettivamente i lati di un triangolo.  ! *** SEZIONE DICHIARATIVA  	IMPLICIT NONE 	REAL :: primo, secondo, terzo ! le lunghezze dei tre lati 	 	 ! *** SEZIONE ESECUTIVA  	WRITE(*,*) ' Inserisci le lunghezze dei tre lati del triangolo: ' 	READ(*,*) primo, secondo, terzo 	 	IF (primo == secondo .AND. secondo == terzo) THEN 		WRITE(*,*) 'Equilatero' 	ELSE IF (primo == secondo .OR. secondo == terzo .OR. primo == terzo) THEN 		WRITE(*,*) ' Isoscele' 	ELSE 		WRITE(*,*) ' Scaleno'  	  	READ(*,*) 	 	STOP 	END PROGRAM triangolo_3

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    156
    lo dobbiamo compilare noi? qual'è in particolare il tuo problema?

    riporta gli errori di compilazione e /o anomalie nell'utilizzo

  3. #3
    Utente di HTML.it L'avatar di stino90
    Registrato dal
    Feb 2007
    Messaggi
    165
    Ho provato a ricompilarlo e adesso è tutto ok. Una cosa: perché il codice si estendeva in orizzontale, ho sbagliato qualcosa io nell'inserimento del post?

  4. #4
    Utente di HTML.it L'avatar di stino90
    Registrato dal
    Feb 2007
    Messaggi
    165
    Questa volta il problema è in un programma con un ciclo indefinito, che sto iniziando a studiare. In pratica, come ho scritto nel commento finale al programma, a me sembra che questo programma scritto dal prof non esegua ciò che è richiesto dalla traccia...

    Vi allego una immagine visto che se vado ad inserire il codice si estende solo orizzontalmente ed è scomodo leggerlo.


  5. #5

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Certamente, così non funziona.

    Ma cosa proponi tu?

    P.S. Non usare la stessa discussione per più di un problema. Apri una nuova discussione per un nuovo problema, altrimenti potresti non avere risposte.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    156
    devi per forza adottare questa via risolutiva o altri metodi sono accettati?

    in caso prova a ragionare in stringhe

  8. #8
    Utente di HTML.it L'avatar di stino90
    Registrato dal
    Feb 2007
    Messaggi
    165
    Originariamente inviato da stino90
    Indirizzo immagine:

    http://img807.imageshack.us/img807/923/34995937.jpg
    Innanzitutto grazie per la risposta e scusa per il fatto della discussione, la prossima volta aprirò un thread apposito.

    Premetto due cose: 1)questo programma così scritto è trovato in una dispensa di un prof in un corso di base sul Fortran e dovrebbe fare ciò che è scritto all'inizio, quindi deve essersi confuso anche il prof.

    2) Io sono un principiante nella programmazione e con il Fortran mi sto avvicinando per la prima volta a questo mondo. Adesso sono arrivato alla fase di studio dei cicli definiti ed indefiniti su cui appunto verte anche questo programmino: di sicuro vi saranno soluzioni più efficaci per fare una cosa del genere, però va fatto senza uso di vettori, funzioni o altro...

    Ci penso un po' su e vedo se riesco a trovare un modo per poter fare ciò che è chiesto dal problema.

    Ciao ;-)

  9. #9
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da stino90


    Ci penso un po' su e vedo se riesco a trovare un modo per poter fare ciò che è chiesto dal problema.
    Magari semplicemente modificando il codice trovato in una sua piccola parte ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  10. #10
    Utente di HTML.it L'avatar di stino90
    Registrato dal
    Feb 2007
    Messaggi
    165
    Uhm dovrei far sì che quando si inserisce un 1 la variabile cont non si azzeri, o meglio va anche ben eche si azzeri, però poi non posso stamparne il contenuto per fare ciò che è richiesto...

    Trovato, la procedura principale era al posto di inserire maxlung = cont,

    IF ( cont > maxlung ) maxlung = maxlung + 1.

    Questo perché nel primo caso andiamo a tirare in ballo la variabile cont che,azzerandosi all'inserimento dell'1, fa "sballare" anche la variabile maxlung. Mentre inserendo questo costrutto condizionale andiamo semplicemente a far sì che se cont è maggiore di mazlung, incrementiamo quest'ultimo e,azzerandosi cont inserendo 1, maxlung se ne sta per i fatti suoi.

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.