Visualizzazione dei risultati da 1 a 10 su 10

Visualizzazione discussione

  1. #1

    [C++]Aiuto stack con più variabili!!

    Salve a tutti!
    Sono uno studente di informatica al primo anno e sto riscontrando difficoltà a programmare uno stack con più variabili (premetto che ad una mi riesce tranquillamente).
    Non capisco come mai in questo codice Dev C++ mi dia errori sui dati di tipo long int e float!
    Una mano sarebbe molto apprezzata!!!!
    Ecco il codice:

    codice:
    #include<iostream>
    #include<stdlib.h>
    #include<string>
    using namespace std;
    
    
    class Libro{
        public: 
            int top;
            char titolo[30];
            char autore[20];
            float prezzo;
            long int data;
    }libro;
    
    
    void creastack (Libro &libro){
        libro.top= -1;
    }
    
    
    void distruggistack (Libro &libro){
        libro.top= -1;
    }
    
    int push(Libro &libro, char &nuovotitolo, char &nuovoautore, float &nuovoprezzo, long int &nuovodata){
        libro.top++;
        libro.titolo[libro.top] = nuovotitolo;
        libro.autore[libro.top] = nuovoautore;
        libro.prezzo[libro.top] = nuovoprezzo;
        libro.data[libro.top] = nuovodata;
        } 
        
    
    void pop(Libro &libro, char &apparsotitolo, char &apparsoautore, float &apparsoprezzo, long int &apparsodata){
            apparsotitolo = libro.titolo[libro.top];
            apparsoautore = libro.autore[libro.top];
            apparsoprezzo = libro.prezzo[libro.top];
            apparsodata = libro.data[libro.top];
            libro.top--;
    }
    
        int main() {
                Libro libro;
    
    
                void creastack();
                char apparsotitolo[30], nuovotitolo[30];
                char apparsoautore[20], nuovoautore[20];
                float apparsoprezzo, nuovoprezzo;
                long int apparsodata, nuovodata;
                char quest, d;    
                cout<<"Vuoi inserire i dati (s/n) ?\n";
                cin>>quest;
                while(quest=='s' || quest =='S') {
                        cout<<"Inserisci i dati di ogni libro secondo l'ordine titolo, autore, prezzo e data: ";
                        cin >> nuovotitolo;
                        cin >> nuovoautore;
                        cin >> nuovoprezzo;
                        cin >> nuovodata;
                        push (libro, nuovotitolo[30], nuovoautore[20], nuovoprezzo, nuovodata);
                        cout<<"Vuoi inserire ancora altri dati (s/n) ?\n";
                        cin>>quest;
                    }
                
                cout<<"Vuoi cancellare l'ultimo elemento? s/n \n";
                cin>>d;
                if(d=='s' || d=='S'){
                    
                    pop(libro, apparsotitolo[30], apparsoautore[20], apparsoprezzo, apparsodata);
                    cout<<apparsotitolo<<"\n"<<apparsoautore;
                        
                    cout<<apparsoprezzo<<"\n"<<apparsodata;
            
                }    
                else{
                
                    system("pause");
                }    
                        
                
                system("pause");
        }
    Ultima modifica di LeleFT; 21-05-2015 a 10:08 Motivo: Aggiunti i tag CODE

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.