Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 30
  1. #1

    (C) Programma per la scrittura della data

    ciao a tutti, ho grandissimi problemi con questo programma

    Scrivere un programma che legge una data nel formato gg/mm/aa e la stampa nel formato gg nome_mese aa. Ad esempio, se l'input è 12/5/2009 allora l'ouput è 12 maggio 2009.

    Ho provato ad abbozzare qualcosa ma naturalmente fioccano gli errori.
    Vi faccio vedere cosa ho fatto(scusate per le enormi idiozie che ho scritto ma ho cominciato a programmare da una settimana e mi sono arrangiato come posso)

    codice:
    #include <stdio.h>
    int main()
    {
       int gg, mm, aa;
       printf("Inserire data:");
       scanf("%d%d%d", &gg, &mm, &&aa);
          
          for(gg=1;gg<=31;gg++){
          printf("%d", gg);
          for(mm=1;gg<=12;gg++)
          printf("%d, mm);
               switch(mm):
               case 1:
               printf("gennaio");
               break;
               case 2:
               printf("febbraio");
               break;
               case 3:
               printf("marzo");
               break;
               case 4:
               printf("aprile");
               break;
               case 5:
               printf("maggio");
               break;
               case 6:
               printf("giugno");
               break;
               case 7:
               printf("luglio");
               break;
               case 8:
               printf("agosto");
               break;
               case 9:
               printf("settembre");
               break;
               case 10:
               printf("ottobre");
               break;
               case 11:
               printf("novembre");
               break;
               case 12:
               printf("dicembre");
               break;
               }
          for(aa=1;aa>=1;aa++){
          printf(" /%d", aa);
    
    }
    }
    }
       return 0;
    }
    Per favora aiutate datemi qualche dritta perchè quello che ho scritto è veramente catastrofico.
    ciao

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Tutte le for non servono ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    e quindi?

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da L.Hamilton
    e quindi?
    E quindi toglile ... esegui nuovamente il programma e guarda cosa non va ...

    Un po' di impegno ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    se tolgo le for ed inserisco una data mi dice soo il corrispettivo mese e per il resto nulla

    ho provato a modificarlo cosi

    codice:
    #include <stdio.h>
    int main()
    {
    int gg, mm, aa;
    printf("Inserire data:");
    scanf("%d%d%d", &gg, &mm, &aa);
    
    if(gg<=31)
    printf("%d/", gg);
    
    switch(mm){
    case 1:
    printf("gennaio");
    break;
    case 2:
    printf("febbraio");
    break;
    case 3:
    printf("marzo");
    break;
    case 4:
    printf("aprile");
    break;
    case 5:
    printf("maggio");
    break;
    case 6:
    printf("giugno");
    break;
    case 7:
    printf("luglio");
    break;
    case 8:
    printf("agosto");
    break;
    case 9:
    printf("settembre");
    break;
    case 10:
    printf("ottobre");
    break;
    case 11:
    printf("novembre");
    break;
    case 12:
    printf("dicembre");
    break;
    }
    
    printf(" /%d", aa);
    
    return 0;
    }
    devo dire che funziona anche se è un po grezzo e non mi sembra un granche come programma

  6. #6
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320

    Moderazione

    Aggiungo il suggerimento di prendere visione del Regolamento interno, soprattutto il punto 6 riguardante la formattazione del codice sorgente.


    Correggo la discussione.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da L.Hamilton
    se tolgo le for ed inserisco una data mi dice soo il corrispettivo mese e per il resto nulla
    Ok che stai cominciando a programmare, ma mi sembra che tu non ti sforzi di fare nessun tipo di analisi dei problemi ...

    Se il programma fa qualcosa (o non la fa) e' solo perche' tu dici di farla (o non farla) ...
    Analizza tutte le istruzioni e cerca di comprendere quali sono quelle che non devono essere inserite (o devono essere modificate).

    Ti chiedo ... a cosa serve questa istruzione

    if(gg<=31)

    ???

    Perche' l'hai inserita? Secondo quale logica ?

    E poi ... sai cosa sono i vettori ? Li puoi usare nel tuo programma ?

    P.S. Usa i tag CODE per mostrare il codice perche' cosi' non si puo' leggere ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2009
    Messaggi
    88
    Hamilton chiedilo a Silvestri e vedrai che ti risponderà.

  9. #9
    Ho provato a pensare una cosa del genere ma manca sicuramente qualcosa, e inoltre c'è il problema dei giorni per i mesi e l'anno bisestile

    codice:
    #include <stdio.h>
    int main()
    {
    char *nm[]= {"gen","feb","mar","apr","mag","giu","lug"ago","set","ott","nov","dic","\0};
    int gg, mm, aa;
    printf("Inserire data:");
    scanf("%d%d%d", &gg, &mm, &aa);
    printf("%d/%d/%d\n", gg,mm,aa);
    printf("%d/%s/%d\n", gg,nm[mm-1],aa);
    return 0;

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da L.Hamilton
    Ho provato a pensare una cosa del genere
    Tu non hai pensato nulla ... vedi

    http://it.answers.yahoo.com/question...3003511AAmwZKF

    Cerca di impegnarti personalmente, senza prendere in giro il prossimo ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

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.