Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jun 21st, 2012  |  syntax: None  |  size: 1.75 KB  |  hits: 10  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. /*Si sviluppi un programma in linguaggio C che riceva in ingresso
  2. due vettori di interi, ciascuno di 10 elementi. Supponendo che i due
  3. vettori siano inseriti già ordinati in modo crescente, il programma deve
  4. creare e stampare un terzo vettore che rappresenti la “fusione” dei due
  5. vettori acquisiti, ovvero che contenga tutti i 20 elementi ordinati tra loro
  6. in modo crescente.*/
  7.  
  8. #include <stdio.h>
  9. #include <stdlib.h>
  10.  
  11. main()
  12. {
  13.       int vett1[10],vett2[10],vett3[20],i,j;
  14.       printf("Inserisci il primo vettore di 10 elmenti:\n");
  15.       for(i=0;i<10;i++)
  16.       scanf("%d",& vett1[i]);
  17.       printf("Inserisci il secondo vettore di 10 elmenti:\n");
  18.       for(i=0;i<10;i++)
  19.       scanf("%d",& vett2[i]);
  20.       for(i=0;i<10;i++)
  21.       vett3[i]=vett1[i];
  22.       for(i=10;i<20;i++)
  23.       vett3[i]=vett2[i-10]; //Qui va messo -10 perché il vettore 2 va da 0 a 10 mentre la i da 10 a 20
  24.       for(i=1;i<=20;i++)
  25.       {                  
  26.                          for(i=1;i<20;i++) //Qui va da 1 a 19, non da 1 a 20 compreso la conta degli indici parte dallo zero compreso
  27.                          {
  28.                                            if(vett3[i]<vett3[i-1]) //confronto il vettore corrente con quello precedente perché son partito da 1
  29.                                            {
  30.                                            j=vett3[i];
  31.                                            vett3[i]=vett3[i-1]; //Qui ho sistemato l'inversione dei due valori
  32.                                            vett3[i-1]=j;
  33.                                            }
  34.                                            }
  35.                          }
  36.       printf("Valori ordinati: \n");
  37.       for(i=0;i<20;i++)
  38.       printf("%d\n",vett3[i]);
  39.       system("PAUSE");
  40.       }