Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Wind Tre 'accende' il 5G Standalone in Italia: si apre una nuova era basata sui servizi
Wind Tre 'accende' il 5G Standalone in Italia: si apre una nuova era basata sui servizi
Con la prima rete 5G Standalone attiva in Italia, WINDTRE compie un passo decisivo verso un modello di connettività intelligente che abilita scenari avanzati per imprese e pubbliche amministrazioni, trasformando la rete da infrastruttura a piattaforma per servizi a valore aggiunto
OPPO Find X9 Pro: il camera phone con teleobiettivo da 200MP e batteria da 7500 mAh
OPPO Find X9 Pro: il camera phone con teleobiettivo da 200MP e batteria da 7500 mAh
OPPO Find X9 Pro punta a diventare uno dei riferimenti assoluti nel segmento dei camera phone di fascia alta. Con un teleobiettivo Hasselblad da 200 MP, una batteria al silicio-carbonio da 7500 mAh e un display da 6,78 pollici con cornici ultra ridotte, il nuovo flagship non teme confronti con la concorrenza, e non solo nel comparto fotografico mobile. La dotazione tecnica include il processore MediaTek Dimensity 9500, certificazione IP69 e un sistema di ricarica rapida a 80W
DJI Romo, il robot aspirapolvere tutto trasparente
DJI Romo, il robot aspirapolvere tutto trasparente
Anche DJI entra nel panorama delle aziende che propongono una soluzione per la pulizia di casa, facendo leva sulla propria esperienza legata alla mappatura degli ambienti e all'evitamento di ostacoli maturata nel mondo dei droni. Romo è un robot preciso ed efficace, dal design decisamente originale e unico ma che richiede per questo un costo d'acquisto molto elevato
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 23-11-2013, 10:29   #1
fabrollo
Junior Member
 
Iscritto dal: Oct 2013
Messaggi: 8
[C++] Vettore Pari e Dispari

Salve, ho un problemino con un esercizio di informatica di c++.
Mi sto preparando ad un esame e quindi mi sto esercitando molto.
Il problema è che sono bloccato su questo esercizio da molto tempo e ci ho passato innumerevoli ore per cercare di farlo funzionare. Comunque vi inizio a dare il testo:

Quote:
Assegnati i vettori di interi VETT1 di cardinalità 16 e riempimento N e VETT2 di cardinalità 23 e di riempimento M ottenere:
- Il vettore PARI costituito dagli elementi di VETT1 e VETT2 di valore pari;
- Il vettore DISP costituito dagli elementi di VETT1 e VETT2 di valore dispari;
- Il massimo di PARI;
- Il minimo di DISP;
- Il valore medio di tali massimo e minimo;

Esempio:


N=4
VETT1= 1 2 3 4
M=7
VETT2= 5 6 7 8 9 1 2

PARI= 2 4 6 8 2
DISP= 1 3 5 7 9 1
MAX= 8
MIN= 1
MEDIA= 4.5

Ecco invece il mio esercizio con i commenti per capire cosa ho "combinato":

Codice:
#include <iostream>
using namespace std;


int main() {
    
    
//******************************************************************************
    // RIEMPIMENTO e CARDINALITA' VETT1
    int VETT1[16];
    int N= 0;
    cout<< "Inserisci il numero di riempimento del primo Vettore: ";
    cin>> N;
    
    // INIZIALIZZIAMO VETT1
    for(int i=0; i<N ; ++i) {
    int conta;        
    cout<< "Inserisci il valore dell'elemento ";
    cout<< i;
    cout<< ": ";
    cin>> conta;
    VETT1[i]=conta;}
    
    
    // RIEMPIMENTO e CARDINALITA' VETT2
    int VETT2[23];
    int M= 0;
    cout<< "Inserisci il numero di riempimento del secondo Vettore: ";
    cin>> M;
    
    // INIZIALIZZIAMO VETT2
    for(int i=0; i<M ; ++i) {
    int conta;        
    cout<< "Inserisci il valore dell'elemento ";
    cout<< i;
    cout<< ": ";
    cin>> conta;
    VETT2[i]=conta;}

//******************************************************************************
    
//CALCOLO IL VETTORE PARI DA VETT1
    
    int ari=0;
    int VETTP[ari];
    for (int c=0; c<N; c++) {
        if (VETT1[c] % 2 == 0) {
                     VETTP[ari] = VETT1[c];
                     ari = ari+1;}
        }
 
 ari = ari ;
//CALCOLO IL VETTORE PARI DA VETT2    
    for (int c=0; c<M; c++) {
        if (VETT2[c] % 2 == 0) {
                     VETTP[ari] = VETT2[c];
        ari = ari + 1;}
        }    
    
//CALCOLO IL VETTORE DISPARI DA VETT1
    int ispari= 0;
    int VETTD[ispari];
    for (int c=0; c<N; c++) {
        if (VETT1[c] % 2 != 0) {
                     VETTD[ispari] = VETT1[c];
                     ispari = ispari+1;}
        }
 
 ispari = ispari ;
//CALCOLO IL VETTORE DISPARI DA VETT2    
    for (int c=0; c<M; c++) {
        if (VETT2[c] % 2 != 0) {
                     VETTD[ispari] = VETT2[c];
        ispari = ispari + 1;}
        }    
        
//******************************************************************************    





   // VISUALIZZA I VETTORI PARI E DISPARI 
for (int v=0; v < ari; v++) {
    cout << "I pari sono rispettivamente:" << VETTP[v] << "\n";}
    
for (int v=0; v < ispari; v++) {
    cout << "I dispari sono rispettivamente:" << VETTD[v] << "\n";}
    
   // CALCOLO IL MASSIMO DEI PARI  (NON FUNZIONA ANCORA)
   int MAX;
   MAX = VETTP[0];
   int TOT;
   for (int c=0; c < ari; c++) {
       if (MAX < VETTP[c] ) { MAX = TOT;}

       }
    cout << "Il Maggiore e' : " << TOT;
   
   
   // CALCOLO IL MINIMO DEI DISPARI
   
   
   
   
   
   //CALCOLO LA MEDIA TRA IL MASSIMO DEI PARI E IL MINIMO DEI DISPARI

    
    


cout<<"\n";
system("PAUSE");
return 0;
    
}
A prima vista sembrerebbe funzionare, ma quando inserite ad esempio i valori nel VETT1 " 5 4 3 2 1 " NON FUNZIONA, (quello dispari invece si) mentre quando li inserite così "1 2 3 4 5" FUNZIONA. Mi sono scervellato al massimo, spero che qualcuno di voi mi sappia aiutare gentilmente.


GRAZIE A TUTTI PER LA COLLABORAZIONE!!
fabrollo è offline   Rispondi citando il messaggio o parte di esso
Old 23-11-2013, 11:28   #2
lorenzo001
Senior Member
 
Iscritto dal: Jul 2008
Città: Roma
Messaggi: 542
Vedi corretti suggerimenti in

http://forum.html.it/forum/showthrea...readid=2899795
lorenzo001 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 14:27   #3
nico159
Senior Member
 
Iscritto dal: Aug 2003
Città: Barletta (BA)
Messaggi: 939
Scusa la domanda, ma da che libro stai studiando C++?

Il codice che hai scritto è pessimo, e mi pare chiaro che il motivo è la mancanza di comprensione su come utilizzare anche solo le basi di C++
__________________
In a world without fences, who needs Gates?
Power by: Fedora 8 - Mac OS X 10.4.11
nico159 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 19:46   #4
fabrollo
Junior Member
 
Iscritto dal: Oct 2013
Messaggi: 8
Quote:
Originariamente inviato da nico159 Guarda i messaggi
Scusa la domanda, ma da che libro stai studiando C++?

Il codice che hai scritto è pessimo, e mi pare chiaro che il motivo è la mancanza di comprensione su come utilizzare anche solo le basi di C++

In effetti sono alle prime armi

Mi sto impegnando al massimo. Vedi sto utilizzando questo manuale: C++ apogeo La Guida completa di Herbert Schildt + internet

Comunque alla fine grazie a vari aiuti sono riuscito a completare il codice:

Codice:
//*************************************BY FABROLLO****************************//

#include <iostream>
using namespace std;


int main() {
    
    
//******************************************************************************
    // RIEMPIMENTO e CARDINALITA' VETT1
    int VETT1[16];
    int N;
    cout<< "Inserisci il numero di riempimento del primo Vettore: ";
    cin>> N;
    
    // INIZIALIZZIAMO VETT1
    for(int i=0; i<N ; ++i) {
    cout <<"Inserisci il valore dell'elemento " << i << ": ";
    cin >>VETT1[i];}
    
    
    // RIEMPIMENTO e CARDINALITA' VETT2
    int VETT2[23];
    int M;
    cout<< "Inserisci il numero di riempimento del secondo Vettore: ";
    cin>> M;
    
    // INIZIALIZZIAMO VETT2
    for(int i=0; i<M ; ++i) {
    cout <<"Inserisci il valore dell'elemento " << i << ": ";
    cin >>VETT2[i];}

//******************************************************************************
    
//CALCOLO IL VETTORE PARI DA VETT1

    int ari=0;
    int VETTP[39];
    for (int c=0; c<N; c++) {
        if (VETT1[c] % 2 == 0) {
                     VETTP[ari] = VETT1[c];
                     ari = ari+1;}
        }
 

//CALCOLO IL VETTORE PARI DA VETT2    
    for (int c=0; c<M; c++) {
        if (VETT2[c] % 2 == 0) {
                     VETTP[ari] = VETT2[c];
      ari = ari + 1;}
        }    
    
//CALCOLO IL VETTORE DISPARI DA VETT1

    int ispari=0;
    int VETTD[39];
    for (int c=0; c<N; c++) {
        if (VETT1[c] % 2 != 0) {
                     VETTD[ispari] = VETT1[c];
                     ispari = ispari+1;}
        }
 

//CALCOLO IL VETTORE DISPARI DA VETT2    
    for (int c=0; c<M; c++) {
        if (VETT2[c] % 2 != 0) {
                     VETTD[ispari] = VETT2[c];
        ispari = ispari + 1;}
        }    
        
//******************************************************************************    





   // VISUALIZZA I VETTORI PARI E DISPARI 
for (int v=0; v < ari; v++) {
    cout << "I pari sono rispettivamente:" << VETTP[v] << "\n";}
    
for (int v=0; v < ispari; v++) {
    cout << "I dispari sono rispettivamente:" << VETTD[v] << "\n";}
    
   // CALCOLO IL MASSIMO DEI PARI
   double MAX=0;
   for (int c=0; c < ari; c++) { 
       if (VETTP[c] > MAX)  
      { MAX = VETTP[c];}
      if (VETTP[c] == MAX) {MAX= MAX;}
       }
    cout << "Il massimo dei pari e': " << MAX << "\n";


   // CALCOLO IL MINIMO DEI DISPARI
   
   double MIN;
   MIN = VETTD[0];
   for (int c=1; c < ispari; c++) {
       
       if (VETTD[c] < MIN)  
       {MIN = VETTD[c];}
      
      if (VETTD[c] == MIN) {MIN= MIN;}
        }
       
    cout << "Il minimo dei dispari e': " << MIN << "\n";
   
   
   
   //CALCOLO LA MEDIA TRA IL MASSIMO DEI PARI E IL MINIMO DEI DISPARI

   double MEDIA;
   MEDIA = (MIN + MAX) / 2;
   cout << "La media tra il massimo ed il minimo e': " << MEDIA << "\n";


cout<<"\n";
system("PAUSE");
return 0;
    
}

//********************************BY FABROLLO***********************************
fabrollo è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Wind Tre 'accende' il 5G Standalone in Italia: si apre una nuova era basata sui servizi Wind Tre 'accende' il 5G Standalone in Italia: s...
OPPO Find X9 Pro: il camera phone con teleobiettivo da 200MP e batteria da 7500 mAh OPPO Find X9 Pro: il camera phone con teleobiett...
DJI Romo, il robot aspirapolvere tutto trasparente DJI Romo, il robot aspirapolvere tutto trasparen...
DJI Osmo Nano: la piccola fotocamera alla prova sul campo DJI Osmo Nano: la piccola fotocamera alla prova ...
FUJIFILM X-T30 III, la nuova mirrorless compatta FUJIFILM X-T30 III, la nuova mirrorless compatta
Nikon Comedy Wildlife 2025: le immagini ...
Il telescopio spaziale James Webb ha cat...
Tesla Roadster? Il re di ChatGPT chiede ...
Pier Giorgio Furcas raddoppia: Vice Dire...
Novità PagoPA: con Klarna:pagamen...
Per il 2026 la Cina eseguirà una ...
AMD mette in naftalina RDNA 1 ed RDNA 2?...
Blue Origin New Glenn: completato lo sta...
SpaceX risponde alla NASA sul lander lun...
Bitcoin compie 17 anni: il Whitepaper ch...
Attenzione agli HDD Western Digital Blue...
MacBook Air M4 a un super prezzo su Amaz...
Dal 12 novembre stretta sui siti porno: ...
Recensione Synology DS725+: tornano i di...
Car of the Year 2026, rivelate le 7 fina...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 04:51.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v