Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    c++ vettori in ordine

    testo 4:
    siano assegnati in ingresso da tastiera 2 vettori v1 e v2 e i loro riempimenti n1 n2
    Supponiamo che v1 sia in ordine crescente.scrivere un programma che inserisca in v1 gli elementi di v2 mantenendo sempre l'ordine crescente.stampare v1 modificato.si suggerisce di utilizzare le funzioni input,output,inserisci
    inoltre si supponga n1=7 e n2=4)
    #include<iostream>
    #include<stdlib.h>
    using namespace std;
    void input(int v1[],int v2[])
    {int v1[],v2[];
    for(i=0;i<7;i++)
    cin>>v[i];
    }
    void inserisci(int v1[],int v2[],int n1,int n2)
    {???
    }
    void output(int v1[],int v2[])
    {cout<<"il vettore modificato e':"<<?;
    }
    int main()
    {
    int v1[7],v2[4];
    cout<<"inserisci i valori del 1 vettore in ordine crescente\n\n\n";
    input(v1);
    cout<<"inserisci i valori di v2\n\n\n";
    input(v2);
    system("PAUSE");
    return 0;
    }
    cosa posso mettere nella funzione inserisci?

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

    Moderazione

    E' la stessa identica funzione che stai cercando di scrivere in questa discussione

    1) Non aprire più discussioni per lo stesso problema (anche se qui hai aggiunto nuove richieste)

    2) A me sembra che tu voglia farti svolgere gli esercizi... hai mai pensato che "studiare il linguaggio" e "provare a svolgere gli esercizi" possano essere delle strade percorribili?



    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

  3. #3
    for (unsigned int i = 0; i < nv2; i++)//nv2 è il numero di elementi presenti in v2
    {
    unsigned int j = 0;
    while (v1[j] < v2[i])
    j++;
    <sciftav1>
    v1[j] = v2[i]
    }

    Naturalmente è solo per rendere l'idea
    Experience is what you get when you don’t get what you want

  4. #4
    #include<iostream>
    #include<stdlib.h>
    using namespace std;
    void input(int v1[i],int v2[j],int i,int j)
    {int v1[i],v2[j];
    for(i=0;i<7;i++)
    cin>>v[i];
    }
    void inserisci(int v1[i],int v2[j],int i,int j)
    {for (unsigned i=0,i<4,i++)
    {unsigned int j=0;
    while(v1[j]<v2[i])
    j++;
    v1[j]=v2[i];
    }
    void output(int v1[i],int v2[j])
    {cout<<"il vettore modificato e\':"<<v1[j];
    }
    int main()
    {
    int v1[7],v2[4];
    cout<<"inserisci i valori del 1 vettore in ordine crescente\n\n\n";
    input(v1);
    cout<<"inserisci i valori di v2\n\n\n";
    input(v2);
    system("PAUSE");
    return 0;
    }

  5. #5
    errori in :
    4 C:\Dev-Cpp\testo4.cpp
    `i' was not declared in this scope
    4 C:\Dev-Cpp\testo4.cpp
    `j' was not declared in this scope
    7 C:\Dev-Cpp\testo4.cpp
    `v' undeclared (first use this function)
    9 C:\Dev-Cpp\testo4.cpp
    `i' was not declared in this scope
    9 C:\Dev-Cpp\testo4.cpp
    `j' was not declared in this scope
    C:\Dev-Cpp\testo4.cpp
    [Warning] In function `void inserisci(int, int)':
    10 C:\Dev-Cpp\testo4.cpp
    parse error before `)' token
    14 C:\Dev-Cpp\testo4.cpp
    `v1' undeclared (first use this function)
    14 C:\Dev-Cpp\testo4.cpp
    `v2' undeclared (first use this function)
    14 C:\Dev-Cpp\testo4.cpp
    parse error before `;' token
    20 C:\Dev-Cpp\testo4.cpp
    parse error before `{' token
    27 C:\Dev-Cpp\testo4.cpp
    return-statement with a value, in function declared
    e non sono pochi...qualcuno sa dirmi cosa sono tutti sti errori?

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Gli errori vanno letti perche' i messaggi sono chiari ...

    Allora ...

    nella riga 4 del file testo4.cpp
    la variabile `i` non deve essere dichiarata in questo punto ...
    (lo stesso vale per j)

    nella riga 7 del file testo4.cpp
    hai utilizzato la variabile [B]`v` che non e' mai stata dichiarata

    e cosi' via ...

    Alcuni errori si riferiscono a problemi con le parentesi { e } e questo fatto, in genere, indica che mancano delle parentesi o ce ne sono troppe prima ...
    Questo problema si evita facilmente se si scrive il codice in modo piu' ordinato e pulito, incolonnando le parentesi { in corrispondenza delle parentesi } ...

    E quando inserisci il testo del codice nel forum, mettilo tra i tag che vengono aggiunti pressando il tasto # ...

    Insomma ... segui certe regole e otterrai di piu' ...

  7. #7
    #include<iostream>
    #include<stdlib.h>
    using namespace std;
    void input(int v1[],int v2[])
    void inserisci(int v1[],int v2[])
    void output(int v1[],int v2[])
    {int v1[7],v2[4];
    for(unsigned i=0;i<7;i++)
    cin>>v1;
    }
    {for (unsigned i=0,i<4,i++)
    {unsigned int j=0;
    while(v1[j]<v2[i])
    j++;
    v1[j]=v2[i];
    }
    }
    {cout<<"il vettore modificato e\':"<<v1[j];
    }
    int main()
    {
    int v1[7],v2[4];
    cout<<"inserisci i valori del 1 vettore in ordine crescente\n\n\n";
    input(v1);
    cout<<"inserisci i valori di v2\n\n\n";
    input(v2);
    system("PAUSE");
    return 0;
    }
    C:\Dev-Cpp\testo4.cpp
    [Warning] In function `void input(int*, int*)':
    5 C:\Dev-Cpp\testo4.cpp
    parse error before `void'
    C:\Dev-Cpp\testo4.cpp
    [Warning] In function `void inserisci(int*, int*)':
    6 C:\Dev-Cpp\testo4.cpp
    parse error before `void'
    C:\Dev-Cpp\testo4.cpp
    [Warning] In function `void output(int*, int*)':
    7 C:\Dev-Cpp\testo4.cpp
    declaration of `v1' shadows a parameter
    7 C:\Dev-Cpp\testo4.cpp
    declaration of `v2' shadows a parameter
    9 C:\Dev-Cpp\testo4.cpp
    no match for `std::istream& >> int[7]' operator
    11 C:\Dev-Cpp\testo4.cpp
    parse error before `{' token
    15 C:\Dev-Cpp\testo4.cpp
    `j' was not declared in this scope
    15 C:\Dev-Cpp\testo4.cpp
    ISO C++ forbids declaration of `v1' with no type
    15 C:\Dev-Cpp\testo4.cpp
    `v2' was not declared in this scope
    15 C:\Dev-Cpp\testo4.cpp
    `i' was not declared in this scope
    15 C:\Dev-Cpp\testo4.cpp
    assignment (not initialization) in declaration
    16 C:\Dev-Cpp\testo4.cpp
    parse error before `}' token
    C:\Dev-Cpp\testo4.cpp
    [Warning] In function `int main()':
    5 C:\Dev-Cpp\testo4.cpp
    too few arguments to function `void input(int*, int*)'
    24 C:\Dev-Cpp\testo4.cpp
    at this point in file
    5 C:\Dev-Cpp\testo4.cpp
    too few arguments to function `void input(int*, int*)'
    26 C:\Dev-Cpp\testo4.cpp
    at this point in file
    in cosa sbaglio a dichiarare le variabili questo è lo stesso modo con cui le ho dichiarate in altri casi ma ....

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    I

    ;

    !!!

    Mancano i ; finali in

    void input(int v1[],int v2[])
    void inserisci(int v1[],int v2[])
    void output(int v1[],int v2[])

    Se non fai attenzione a questa semplice regola del C, non vai molto avanti ... e' solamente una questione di attenzione ...

    P.S. Utilizza il tasto # per postare il codice nel forum ... altrimenti non si riesce ad esaminare il codice molto facilmente e si rinuncia a rispondere ... ok?

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.