Primo commit con bozza funzionante, ma non troppo di es_Autosalone
This commit is contained in:
parent
af493bc1f5
commit
7d89f50626
2 changed files with 126 additions and 0 deletions
126
JavaScript/es_autosalone/cpp/Autosalone.cpp
Normal file
126
JavaScript/es_autosalone/cpp/Autosalone.cpp
Normal file
|
|
@ -0,0 +1,126 @@
|
|||
#include <stdio.h>
|
||||
#include <string>
|
||||
#include <inttypes.h>
|
||||
|
||||
struct Auto {
|
||||
// Attributi
|
||||
std::string modello;
|
||||
std::string marca;
|
||||
std::string numTarga;
|
||||
float prezzo;
|
||||
|
||||
// Metodi
|
||||
|
||||
// Stampa dettagli auto TODO --> [Funzionante]
|
||||
void infoAuto(){
|
||||
printf("\nModello: %s\n", modello.c_str());
|
||||
printf("Marca: %s\n", marca.c_str());
|
||||
printf("Numero di Targa: %s\n", numTarga.c_str());
|
||||
printf("\tPrezzo: %.2f\n", prezzo);
|
||||
}
|
||||
|
||||
void modificaAuto( std::string nuovoModello, std::string nuovaMarca, std::string nuovaTarga, float nuovoPrezzo ){
|
||||
modello = nuovoModello;
|
||||
marca = nuovaMarca;
|
||||
numTarga = nuovaTarga;
|
||||
// come cazzo si usa lo static cast dio cane!!!
|
||||
prezzo = nuovoPrezzo;
|
||||
puts("Dati aggiornati\n");
|
||||
}
|
||||
};
|
||||
|
||||
struct Autosalone{
|
||||
int n=0;
|
||||
|
||||
// Nome Azienda
|
||||
std::string nome;
|
||||
// Locazione
|
||||
std::string parco;
|
||||
// Array con inventario
|
||||
Auto inventario[100]; // per ora 100, poi facciamo dinamico...
|
||||
|
||||
// inizializzo l'oggetto visto la mancaza di costruttori...
|
||||
// e la mia poca voglia di studiare
|
||||
void init( const std::string newNome, const std::string newParco){
|
||||
nome = newNome;
|
||||
parco = newParco;
|
||||
};
|
||||
|
||||
// Metodi
|
||||
void addAuto( const Auto &newauto ){ // non credo sia corretto
|
||||
|
||||
inventario[n] = newauto;
|
||||
n++;
|
||||
|
||||
printf("\n\tAuto Aggiunta.\n");
|
||||
}
|
||||
|
||||
// ToDo, Doppio metodo. Anche se credo si posso fare uno solo condizionale...
|
||||
// ma ripeto... la mia voglia di studiare è misera... molto misera...
|
||||
|
||||
// formalmente scorretto, indice cambia(?)
|
||||
void removeAutoID( int ID = -1 ){
|
||||
if ( ID == -1 ){
|
||||
printf("Errore: Inserire ID inventario...\n...\n\tStampa inventario in corso:\n");
|
||||
infoInventario();
|
||||
} else {
|
||||
removeAuto();
|
||||
}
|
||||
|
||||
}
|
||||
void removeAuto(){
|
||||
|
||||
}
|
||||
|
||||
// ToDo
|
||||
void modificataInventario( int ID = -1 ){
|
||||
if ( ID == -1 ){
|
||||
printf("Errore: Inserire ID inventario...\n...\n\tStampa inventario in corso:\n");
|
||||
infoInventario();
|
||||
} else {
|
||||
removeAuto();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void infoInventario(){
|
||||
printf("Autosalone: %s\n", nome.c_str());
|
||||
printf("\tLocazione: %s\n", parco.c_str());
|
||||
|
||||
for (int i = 0; i < n; i++){
|
||||
printf("\n\tAuto N / posizione inventario: \nID:%d \n", i);
|
||||
inventario[i].infoAuto();
|
||||
printf("----------------------------------");
|
||||
}
|
||||
printf("\n");
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
int main(void){
|
||||
|
||||
Auto testAuto1 = {"M3 S-Sport", "BMW", "MT213132", 34.918};
|
||||
Autosalone testAutosalone1;
|
||||
|
||||
testAutosalone1.init("Bebbo's Lab", "Vetrina");
|
||||
|
||||
testAutosalone1.addAuto( testAuto1 );
|
||||
Auto auto1 = {"Baracca", "Subaru", "STRUNNZ", 1000000};
|
||||
Auto auto2 = {"Sandalo", "Offeso", "MT213132", 918};
|
||||
Auto auto3 = {"Yeti", "Skoda", "AKSMKDA", 15769.90};
|
||||
Auto auto4 = {"Pigra", "Nissan", "ASSAAS", 12122};
|
||||
Auto auto5 = {"Sandero", "Dacia", "MAMT", 9999};
|
||||
|
||||
testAutosalone1.addAuto(auto1);
|
||||
testAutosalone1.addAuto(auto2);
|
||||
testAutosalone1.addAuto(auto3);
|
||||
testAutosalone1.addAuto(auto4);
|
||||
testAutosalone1.addAuto(auto5);
|
||||
|
||||
testAutosalone1.removeAutoID(1);
|
||||
|
||||
//testAutosalone1.infoInventario();
|
||||
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue