SOMMA DEI VALORI DELLE CELLE PARI E DI QUELLE DISPARI

di il
8 risposte

SOMMA DEI VALORI DELLE CELLE PARI E DI QUELLE DISPARI

Buongiorno a tutti.

Il codice è il seguente :
/* Compiti di informatica    */

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

int i, j;

int main(){

    printf("** Esercitazione di informatica **\n\n");        /* Titolo */

	// RIEMPIRE UN 1o VETTORE DI 10 ELEMENTI CON I VALORI DA 1 A 10
	
	            printf("Vettore con elementi da 1 a 10\n\n");
	            int vettore[10];
	                 for(i=0; i<10; i++){
  
                      vettore[i] = i+1;
 	
	// STAMPARE IL VETTORE PRIMA POPOLATO
	
	             printf("Cella: %d Numero:%d\n ", i, vettore[i]);
                 } /*  Graffa for i */

	// RIEMPIRE UN 2o VETTORE DI 10 ELEMENTI CON I VALORI DA 10 A 1
	
                int vettore2[10];
                int j=10;
                for(i=0; i<10; i++){
                vettore2[i]=j;
                 j--;
                 }

	// STAMPARE IL VETTORE PRIMA POPOLATO
	            printf("\nVettore con elementi da 10 a 1\n");
	            for(i=0; i<10; i++){
             printf("cella: %d Numero:%d\n", i, vettore2[i]);
    }
              

	// STAMPARE I VALORI DELLE CELLE PARI DEL 1o VETTORE
	
	            printf("\nValori delle celle pari del primo vettore:  ");
	            
	            for(i=0; i<10; i++){
              if(i==0)
              printf("%d", vettore[i]);
              else if(i%2==0)
              printf("%d", vettore[i]);
              else{
              }
 
              }
	                           
	            

	// STAMPARE I VALORI DELLE CELLE DISPARI DEL 2o VETTORE
	            printf("\nValori delle  celle dispari del secondo vettore:  ");
	            for(i=0; i<10; i++){
              if(i==0){ }
              else if(i%2==0){ }
              else
                  printf("%d", vettore2[i]);
 
                  }
              
	// STAMPARE LA SOMMA DEI VALORI DELLE CELLE PARI E DI QUELLE DISPARI X IL 1o VETTORE
	
	            printf("\nSomma dei valori delle celle pari");
	
	

	// USANDO UN SOLO CICLO STAMPARE LA SOMMA DEI VALORI DELLE CELLE PARI E DI QUELLE DISPARI X IL 2o VETTORE


	getch();


return 0;
}
La parte che ho svolto è giusta, solo che non riesco a capire come ultimare le ultime due richieste( che sono uguali).
Come sommo solo le celle pari oppure solo le celle dispari ?

Ho l' idea di essermi perso in un bicchier d' acqua ma non riesco ad andare avanti !

Grazie a tutti.

8 Risposte

  • Re: SOMMA DEI VALORI DELLE CELLE PARI E DI QUELLE DISPARI

    Le celle pari (quelle con indice pari) sono quelle con indice 0, 2, 4, 6, 8 quindi ti basta fare un ciclo for che parte da 0 e in cui aumenti l'indice di 2. Ovvero non

    i++

    ma

    i+=2

    Per le dispari (con indice 1, 3, 5, 7, 9) cambia soltanto il valore di partenza ... da 1 e non da 0, con passo sempre doppio
  • Re: SOMMA DEI VALORI DELLE CELLE PARI E DI QUELLE DISPARI

    Perfetto grazie.

    E per gestire la somma come faccio ?
  • Re: SOMMA DEI VALORI DELLE CELLE PARI E DI QUELLE DISPARI

      
    // STAMPARE LA SOMMA DEI VALORI DELLE CELLE PARI E DI QUELLE DISPARI X IL 1o VETTORE
    
                   printf("\nSomma dei valori delle celle pari");
                   int sum = 0;
                   for(i=0;i<10;i+=2)
                   {
                       sum += vettore[i];
                   }
                   printf("%d", sum);
                   sum = 0;
                   printf("\nSomma dei valore delle celle dispari");
                   for(i=1;i<10;i+=2)
                   {
                       sum += vettore[i];
                   }
                   printf("%d", sum);
    
    
    
       // USANDO UN SOLO CICLO STAMPARE LA SOMMA DEI VALORI DELLE CELLE PARI E DI QUELLE DISPARI X IL 2o VETTORE
    
                    printf("\nSomma delle celle pari e dispari");
                    int sum1 = 0;
                    int sum2 = 0;
                    for(i=0;i<10;i++)
                    {
                        if(i % 2 == 0)
                        {
                            sum1 += vettore2[i];
                        } else
                        {
                            sum2 += vettore2[i];
                        }
                    }
                    printf("Pari = %d - Dispari = %d", sum1, sum2);
    
    Credo che il codice sia abbastanza semplice, nel primo come già suggerito sommi ogni due elementi, nel secondo con un if controlli prima se è di indice pari o dispari e gestisci due somme contemporaneamente per poi mostrarle
  • Re: SOMMA DEI VALORI DELLE CELLE PARI E DI QUELLE DISPARI

    Perfetto , ora è tutto chiaro.

    Grazie mille e buona giornata !
  • Re: SOMMA DEI VALORI DELLE CELLE PARI E DI QUELLE DISPARI

    Io semplificherei l'ultima parte di codice ...
    
        int sum1 = 0;
        int sum2 = 0;
        for(i=0;i<10;i+=2)
        {
    		sum1 += vettore2[i];
    		sum2 += vettore2[i+1];
        }
        printf("Pari = %d - Dispari = %d", sum1, sum2);
    
  • Re: SOMMA DEI VALORI DELLE CELLE PARI E DI QUELLE DISPARI

    oregon ha scritto:


    Io semplificherei l'ultima parte di codice ...
    
        int sum1 = 0;
        int sum2 = 0;
        for(i=0;i<10;i+=2)
        {
    		sum1 += vettore2[i];
    		sum2 += vettore2[i+1];
        }
        printf("Pari = %d - Dispari = %d", sum1, sum2);
    
    Hai ragione, non ci ho proprio pensato!
  • Re: SOMMA DEI VALORI DELLE CELLE PARI E DI QUELLE DISPARI

    Sinceramentonon ho capito che cosa manca!
    comunque ho scritto per suggerirti questa altraforma per visualizzare i numeri pari o dispari.
    la forma da me suggerita ela seguente :
    for(i=0; i<10; i=i+2){
                {  printf("%d", vettore[i]); }
    
    la routine sopra serve per le righe pari
    for(i=1; i<10; i=i+2){
                {  printf("%d", vettore[i]); }
    
    mentre questa serve per quelle dispari
    puoi usare lo stesso stratagemma per fare i calcoli che vuoi
    esempiose vuoi sommare le righe pari del vettore 1 con quelle pari del vettore 2
    basta che fai :
    
    int somma=0;
    for(i=0; i<10; i=i+2){
                { somma = somma + vettore[i] + vettore2[i]; }
    
  • Re: SOMMA DEI VALORI DELLE CELLE PARI E DI QUELLE DISPARI

    smalldragon ha scritto:


    comunque ho scritto per suggerirti questa altra forma per visualizzare i numeri pari o dispari.
    Forse non hai letto la mia prima risposta dove gli suggerivo esattamente questo modo di operare ...
Devi accedere o registrarti per scrivere nel forum
8 risposte