Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: [C] Sequenza invertita

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2016
    Messaggi
    21

    [C] Sequenza invertita

    Ciao a tutti! Sono alle prime armi con la programmazione in C e ho qualche dubbio con gli array. Ho questo esercizio: "Scrivere un programma che legga da tastiera una sequenza di 10 interi, e stampi la stessa sequenza con ordine invertito, dividendo per 2 gli elementi pari della sequenza."
    Io ho provato a buttare giù qualcosa ma non riesco a capire come fare. Questo è quello che ho scritto:
    codice:
    #include <stdio.h>
    main()
    {
        int a[10];
        int i;
        int n;
        for (i=0; i<10; i++){
            scanf("%d", &n);
            if (n%2==0) n=n/2;
        }
        for (i=9; i<=0; i--){
            printf("%d", a[i]);
        }
        return 0;
    }
    solo che non capisco come fare a ridarlo in ordine inverso e come fare a modificare ciò che ho scritto all'interno dell'array (ho provato a fare in quel modo ma non sono se va bene). Ho provato a eseguirlo nel prompt dei comandi, mi fa scrivere i 10 numeri ma poi all'ultimo invio non mi ristampa niente. In cosa sbaglio? So che ci sono cose che ancora non mi sono chiare
    Ultima modifica di MItaly; 28-02-2016 a 15:52 Motivo: Tag CODE

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Nell'input non devi usare n ma il vettore a[i]

    E il controllo non lo devi fare su n ma sull'indice i (come dice il testo)
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2016
    Messaggi
    21
    Quindi metto scanf("%d", &a[i]) per l'input e il controllo intendi l'if? Di mettere if (i%2==0)?

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Quote Originariamente inviata da Saever Visualizza il messaggio
    Quindi metto scanf("%d", &a[i]) per l'input e il controllo intendi l'if? Di mettere if (i%2==0)?
    Certo ... l'input dei valori lo fai nell'array e l'indice è i ... no?

    La variabile n non serve a nulla, eliminala. Anche il dimezzamento lo fai nell'array
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2016
    Messaggi
    21
    Quindi per scorrere tipo l'array e queste cose qui uso i, se invece devo modificare il contenuto di un array uso a[i] giusto? Quindi lo scanf è come ho scritto sopra e l'if diventa: if (a[i]%2==0) a[i]=a[i]/2
    Giusto?

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Quote Originariamente inviata da Saever Visualizza il messaggio
    Quindi per scorrere tipo l'array e queste cose qui uso i, se invece devo modificare il contenuto di un array uso a[i] giusto? Quindi lo scanf è come ho scritto sopra e l'if diventa: if (a[i]%2==0) a[i]=a[i]/2
    Giusto?
    Non mi hai capito.

    Quanto controlli l'indice (con la if) devi controllare i

    Per gestire i valori degli elementi dell'array (per l'input o la modifica) allora usi a[i]

    Quindi la scanf con &a[i] e il controllo con

    if(i%2==0) a[i]=a[i]/2
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2016
    Messaggi
    21
    Ma io devo controllare che i valori all'interno dell'array siano pari, non l'indice..
    Però continua a non stamparmi niente in uscita, come mai?

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Quote Originariamente inviata da Saever Visualizza il messaggio
    Ma io devo controllare che i valori all'interno
    Allora va bene il controllo di a[i]

    Però continua a non stamparmi niente in uscita, come mai?
    Perché il controllo della seconda for è sbagliato ... ricorda che conti al contrario
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2016
    Messaggi
    21
    La scrittura del for mi pare giusta.. non sono sicura del printf perché non capisco come fa se lo lascio così a scriverlo al contrario

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Perché ti "sembra giusto" se ti ho detto che il controllo del for è sbagliato?
    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.