Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    636

    [C] problema addebito parcheggio

    ciao a tutti
    ho fatto questo breve programmino per l'addebito del parcheggio in un garage
    l'addebito è : per le prime 3 ore tariffa di € 2,50 per ora se si superano le 3 ore si sommano € 0,50 per ogni ora o frazione di ora

    codice:
    #include <stdio.h>
    #include <stdlib.h>
    
    /*
     * 
     */
    
    float addebito (int y); /*prototipo di funzione*/
    
    
    int main() {
    
        int num_ore;
    
        printf ("Inserisci numero di ore : \n");
        scanf ("%d", &num_ore);
    
    
        printf ("Importo totale %3.2f", addebito(num_ore));
    
    
    
    
        system("PAUSE");
    
        return 0;
    }
    
    float addebito (int y)
    
        {
    	float importo = 0.0;
        float tot = 0.0;
    	float tot1 = 0.0;
        int i;
    
        if (y <= 2){
            for (i = 0; i < y; i++){
              importo = importo + 2.50;
            }
        }
        if (y > 2){
           for (i = 0; i < 2; i++){
               tot = tot + 2.50;
               }
           for (i = 2; i < y; i++){
               tot1 = tot1 + 0.50;
               }
               importo = tot + tot1;
        }
        return importo;
    }
    1- il primo problema è che innanzitutto se non metto l'istruzione 'system("PAUSE");'...la finestra si chiude senza farmi visualizzare il risultato
    2- il secondo problema è che non riesco a vedere il debug all'interno della funzione
    p.s. sto utilizzando visual c++

  2. #2
    1) È normale. Piuttosto, al posto della system metti
    codice:
    getchar();
    .
    2) In che senso?
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    636
    intendo il debug passo passo..mi restituisce il risultato della funzione senza farmi capire che succede dentro di essa

  4. #4

    Re: [C] problema addebito parcheggio

    Originariamente inviato da jurij7
    1- il primo problema è che innanzitutto se non metto l'istruzione 'system("PAUSE");'...la finestra si chiude senza farmi visualizzare il risultato
    2- il secondo problema è che non riesco a vedere il debug all'interno della funzione
    p.s. sto utilizzando visual c++
    • 1 - Non mettercelo proprio 'system("PAUSE");' e neppure 'getchar()': se lo esegui in modalità debug puoi mettere un breakpoint sull'ultima graffa così puoi vedere l'output del programma, se lo lanci da linea di comando lo vedi comunque, se lo lanci senza debug la finestra ti rimane aperta finché non la chiudi tu.
    • 2 - Leggiti la documentazione del tuo debugger, in particolare laddove si dice "step in".

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    636
    1- se utilizzo Visual C++ ha bisogno dell'istruzione 'system("PAUSE");' altrimenti si chiude la finestra e non mi fa visualizzare il risultato mentre se utilizzo Netbeans non ha bisogno di 'system("PAUSE");' perchè la finestrella non si chiude e mi fa visualizzare tutto (fino al risultato)

    2- vedo di trovare qualcosa sul debug passo passo in rete per il Netbeans

  6. #6
    Originariamente inviato da jurij7
    1- se utilizzo Visual C++ ha bisogno dell'istruzione 'system("PAUSE");' altrimenti si chiude la finestra e non mi fa visualizzare il risultato mentre se utilizzo Netbeans non ha bisogno di 'system("PAUSE");' perchè la finestrella non si chiude e mi fa visualizzare tutto (fino al risultato)
    in modalità debug o release? Mi ripeto: in debug basta che metti un break point, in release la finestra non si chiude da sola, ed in ogni modo puoi lanciarla direttamente da linea di comando. Insomma la 'system ("PAUSE")' (o la getchar o altro) per non far chiudere la finestra d'output, dal mio punto di vista è una cosa totalmente inutile.

    Originariamente inviato da jurij7
    2- vedo di trovare qualcosa sul debug passo passo in rete per il Netbeans
    con google cerca: "netbeans c debugger tutorial". Al primo posto trovi: http://www.netbeans.org/kb/docs/cnd/debugging.html

    nella toolbar della finestra di debug ci sono dei pulsantini, passaci sopra col mouse e probabilmente uno di quelli si chiamera' "step into" o qualcosa di simile..

    Con un po' più di impegno se come chiave di ricerca usi "netbeans c debugger tutorial step in" al primo posto trovi:
    http://www.fsl.cs.sunysb.edu/~dquigl...&tt=debug&pf=y

    in cui viene illustrato sia come fare lo step in e lo step out.

    Osserva che la tecnica è più o meno simile a qualunque altro debug in qualunque altro linguaggio in qualunque sistema operativo..

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    636
    si trovo STEP IN e STEP OUT...ma non sono cliccabili...forse ho bisogno di qalche particolare plugin

  8. #8
    Originariamente inviato da jurij7
    si trovo STEP IN e STEP OUT...ma non sono cliccabili...forse ho bisogno di qalche particolare plugin
    Potrebbe anche darsi.. oppure perché il programma non è in pausa. Per metterlo in pausa puoi mettere un breakpoint..

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.