Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Compito C++

  1. #1

    Compito C++

    Chi mi può risolvere questo compito di informatica , sarebbe urgente ... grazie mille a chi lo puo' fare.


    Scrivere sul file cognome.cpp un programma che gestisce una unità didattica (con una coda di allievi per la segreteria (realizzata con una lista) e una classe con al più 10 allievi (realizzata con un array), programma costituito da:

    1. le seguenti dichiarazioni di tipo (da scrivere prima delle funzioni):

    struct allievo {char id[21]; int vt;};
    // id: stringa lunga al più 20 caratteri; vt: voto del test di ingresso
    struct elem {allievo inf; elem* pun;};
    // elemento della lista
    struct comp {bool lib; allievo al; };
    // componente dell’array: il campo lib indica se la componente e’ libera
    struct did {elem* pp; comp ee[10]; };
    // unita’ didattica con un puntatore pp e un array ee di 10 componenti

    1. una funzione di tipo void ini(), avente come argomento formale una sruttura dd di tipo did, che inizializza il campopp con 0 e tutte le componenti dell’array ee con il campo lib uguale a true;
    2. una funzione di tipo void stampaalli(), avente come argomenti formali una struttura alli di tipo allievo e un fstream ff, che scrive su uscita standard e su ff il campo id di alli seguito da tabulazione (vedi file cognome.txt)
    3. una funzione di tipo void stampac(), avente come argomenti formali un puntatore pn di tipo elem* e un fstream ff, che su uscita standard e su ff scrive: o Coda vuota oppure il campo id di ogni allievo in coda seguito da punto e virgola (vedi file cognome.txt); e poi, comunque, un fine linea;
    4. una funzione di tipo void insc(), avente come argomenti formali un puntatore pn di tipo elem* e una struttura alli di tipo allievo, che inserisce in coda un nuovo elemento contenente alli nella coda puntata da pn;
    5. una funzione di tipo booleano estc(), avente come argomento formale un puntatore pn di tipo elem* e una strutturaalli di tipo allievo, che estrae un elemento dalla coda puntata da pn e ne restituisce l’informazione in alli;
    6. una funzione di tipo void stampaa(), avente come argomenti formali un array aa di 10 componenti di tipo comp e un fstream ff, che su uscita standard e su ff scrive: o Classe vuota oppure per ogni componente non libera di aa, il campo id del corrispondente allievo seguito da punto e virgola (vedi file cognome.txt); e poi, comunque, un fine linea;
    7. una funzione di tipo booleano insa(), avente come argomenti formali un array aa di componenti di tipo comp e una struttura alli di tipo allievo, che, se possibile, cerca in aa la prima componente libera, la trasforma in non libera e vi inserisce alli;
    8. una funzione di tipo void orda(), avente come argomenti formali un array aa di componenti di tipo comp, che ordina le componenti non libere in modo che il campo id degli allievi sia ordinato alfabeticamente (trovare preliminarmente il numero delle componenti non libere);
    9. la seguente funzione main():

    int main()
    { fstream uu;
    uu.open("./cognome.txt",ios:ut);
    uu << "Cognome Nome\n" << "Testo n. numero\n\n";
    allievo al, a1 = {"Bianchi Carlo", 82},
    a2 = {"Rossi Mario", 90}, a3 = {"Verdi Paola", 70},
    a4 = {"Neri Lucia", 95}, a5 = {"Bruni Gino", 96};
    did ud; ini(ud);
    insc(ud.pp, a3); insc(ud.pp, a5); insc(ud.pp, a4);
    stampac(ud.pp, uu);
    if (estc(ud.pp, al)) { stampaalli(al, uu); stampac(ud.pp, uu); }
    if (estc(ud.pp, al)) { stampaalli(al, uu); stampac(ud.pp, uu); }
    if (estc(ud.pp, al)) { stampaalli(al, uu); stampac(ud.pp, uu); }
    if (estc(ud.pp, al)) { stampaalli(al, uu); stampac(ud.pp, uu); }
    stampaa(ud.ee, uu);
    insa(ud.ee, a1); insa(ud.ee, a2); insa(ud.ee, a3);
    insa(ud.ee, a4); insa(ud.ee, a5);
    stampaa(ud.ee, uu);
    orda(ud.ee);
    stampaa(ud.ee, uu);
    }

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,307
    Nessuno perchè questo tipo di richieste sono vietate dal regolamento. Leggi il Regolamento interno


    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

Tag per questa discussione

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 © 2024 vBulletin Solutions, Inc. All rights reserved.