Bancomat

di il
5 risposte

Bancomat

Eccomi di nuovo a richiedere il vostro aiuto, sto realizzando un programma che dovrà simulare il classico bancomat e perciò permettere operazioni di prelievo, deposito, visualizzazione del saldo e stampa degli ultimi 5 movimenti.
Per le prime 3 operazione nessun problema ma la stampa degli ultimi 5 movimenti mi lascia davvero perplesso! Se mi date un input mi dareste una grossa mano .
Grazie come sempre e buon anno a tutti!

5 Risposte

  • Re: Bancomat

    Ciao, potresti fare in questo modo: inizializzi a 0 un array di interi grande 5. Poi assegnare ad ogni operazione un numero, una sorta di codice operativo, ad esempio: prelievo = 1, deposito = 2, saldo = 3, cosi ogni volta che viene fatta un operazione di questo tipo puoi memorizzare nelle celle dell'array libere questo codice, quando l'array è pieno inizi a sovrascrivere partendo dalla prima cella.
  • Re: Bancomat

    C o C++? Benché la sezione sia la stessa i linguaggi sono totalmente diversi…

    Demda ha scritto:


    Ciao, potresti fare in questo modo: inizializzi a 0 un array di interi grande 5. Poi assegnare ad ogni operazione un numero, una sorta di codice operativo, ad esempio: prelievo = 1, deposito = 2, saldo = 3, cosi ogni volta che viene fatta un operazione di questo tipo puoi memorizzare nelle celle dell'array libere questo codice, quando l'array è pieno inizi a sovrascrivere partendo dalla prima cella.
    Esatto. Se sei su C++ usa std::queue di una enumerazione e creati una tua funzione print_queue o fai un overload dell’operatore<< di std::ostream.
  • Re: Bancomat

    Demda ha scritto:


    Ciao, potresti fare in questo modo: inizializzi a 0 un array di interi grande 5. Poi assegnare ad ogni operazione un numero, una sorta di codice operativo, ad esempio: prelievo = 1, deposito = 2, saldo = 3, cosi ogni volta che viene fatta un operazione di questo tipo puoi memorizzare nelle celle dell'array libere questo codice, quando l'array è pieno inizi a sovrascrivere partendo dalla prima cella.
    Scusate se non ho detto prima che sto lavorando in c++, comunque non vorrei sovrascrivere, non esiste un modo per traslare gli elementi dell'array a sinistra cosi da far uscire il primo valore e inserire il "nuovo" ultimo? es: array[5] = {1,2,3,4,5} ---->> 2,3,4,5,6.
    Grazie anticipatamente come sempre!
  • Re: Bancomat

    Duhbe ha scritto:


    Demda ha scritto:


    Ciao, potresti fare in questo modo: inizializzi a 0 un array di interi grande 5. Poi assegnare ad ogni operazione un numero, una sorta di codice operativo, ad esempio: prelievo = 1, deposito = 2, saldo = 3, cosi ogni volta che viene fatta un operazione di questo tipo puoi memorizzare nelle celle dell'array libere questo codice, quando l'array è pieno inizi a sovrascrivere partendo dalla prima cella.
    Scusate se non ho detto prima che sto lavorando in c++, comunque non vorrei sovrascrivere, non esiste un modo per traslare gli elementi dell'array a sinistra cosi da far uscire il primo valore e inserire il "nuovo" ultimo? es: array[5] = {1,2,3,4,5} ---->> 2,3,4,5,6.
    Grazie anticipatamente come sempre!
    Ti serve std::queue
  • Re: Bancomat

    Duhbe ha scritto:


    Demda ha scritto:


    Ciao, potresti fare in questo modo: inizializzi a 0 un array di interi grande 5. Poi assegnare ad ogni operazione un numero, una sorta di codice operativo, ad esempio: prelievo = 1, deposito = 2, saldo = 3, cosi ogni volta che viene fatta un operazione di questo tipo puoi memorizzare nelle celle dell'array libere questo codice, quando l'array è pieno inizi a sovrascrivere partendo dalla prima cella.
    Scusate se non ho detto prima che sto lavorando in c++, comunque non vorrei sovrascrivere, non esiste un modo per traslare gli elementi dell'array a sinistra cosi da far uscire il primo valore e inserire il "nuovo" ultimo? es: array[5] = {1,2,3,4,5} ---->> 2,3,4,5,6.
    Grazie anticipatamente come sempre!
    Si !
    Scrivilo tu stesso, ti basta spostare l'elemento di indice
    i
    nella posizione di
    i-1
    una volta fatto ciò inserisci il nuovo valore, dovrai usare un secondo vettore di supporto.
    Una cosa del genere (scritta in C):
    
    
    #include <stdio.h>
    #include <stdlib.h>
    
    int main (int argc, char *argv[]){
    	int vet[5] = {1, 2, 3, 4, 5};
    	const int vet1[5] = {1, 2, 3, 4, 5};
    	
    	for (int i = 4; i >= 0; i -- ){
    		vet[i-1] = vet1[i];
    	}
    	
    	vet[4] = 6;	 //Nuovo valore
    	
    	
    	return 0;
    }
    
    
    
Devi accedere o registrarti per scrivere nel forum
5 risposte