Oppure

Loading
Questo topic e' stato chiuso dal moderatore.
27/05/17 14:01
lallo12
salve, ho da fare questo progetto ma non saprei come continuare a sviluppare l'ultimo punto potreste darmi dei consigli?

Si vuole simulare la gestione di un distributore automatico di carburante. Si suppone di avere 3 tipi di carburante identificati da un nome, da un codice identificativo, dal numero di litri presenti nella scorta e da un prezzo per litro. Il distributore è gestito per un intero mese (31 giorni) (e.g., organizzazione matriciale). Permettere all’utente di:
• Inserire dei soldi (5,10, 20, 50 euro)
• Scegliere il tipo carburante o Controllare se è possibile soddisfare la richiesta o Nel caso è possibile soddisfare la richiesta rifornire di carburante (aggiornando la scorta)
• Dato un giorno visualizzare il totale di carburante venduto
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>

struct elenco{
char nome[10];
int codice;
float prezzo;
float rimanenza;
};
struct data{
int giorno;
int mese;
int codice;
};
int main()
{
    typedef struct elenco Elenco;
    Elenco prodotto[3] = {{"benzina",0,1.00,100},
                            {"metano",1,1.30,100},
                             {"gasolio",2,1.20,100}};

    typedef struct data Data;
    Data array_data[31];


printf(" -- LISTA PRODOTTI --\n\n");
printf("NOME\t\tCODICE\tPREZZO\tRIMANENTI\n");
    float banconote_inserite,resto;
    int i,scelta;
    int j=0;
    for(i=0;i<3;i++){
        printf("%-10s\t%4d\t%5.2f\t%5.2f\n",prodotto[i].nome, prodotto[i].codice, prodotto[i].prezzo, prodotto[i].rimanenza);
    }
    printf("\n");
    printf("\n(4)TERMINA LA MACCHINA\n");
    printf("\n(5)RESOCONTO\n");

    time_t t = time(NULL);
    struct tm *time;
    time = localtime(&t);
    int giorno = time->tm_mday;
    int mese = time->tm_mon;

    while(1){
        printf("\n");
        printf("-- SCELTA CARBURANTE --\n");
        scanf("%d",&scelta);

        if(scelta==4){
            printf("operazioni eseguite: %d", j);
            break;
        }
        if(scelta==5){
            int giorno_1, codice_1;
            printf("il giorno richiesto:\n");
            scanf("%d", &giorno_1);
            printf("il mese richiesto:\n");
            scanf("%d", &codice_1);
            break;
        }
        if(scelta!=4 &&scelta!=5){
            printf("HAI SCELTO DI PRELEVARE: %s",prodotto[scelta].nome);
            printf("\n");
            printf("Inserisci delle banconote:");
            scanf("%f", &banconote_inserite);
            printf("\n");
        }
        if(banconote_inserite==5.00 || banconote_inserite==10 || banconote_inserite==20 || banconote_inserite==50){
            if(banconote_inserite<prodotto[scelta].prezzo){
                printf("NON HAI ABBASTANZA CREDITO\n");            }
        }else if(banconote_inserite > prodotto[scelta].prezzo){
        prodotto[scelta].rimanenza=prodotto[scelta].rimanenza-prodotto[scelta].prezzo*banconote_inserite;
        printf("STAI PER RICEVERE IL CARBURANTE \n");
        j++;
        array_data[j].giorno=giorno;
        array_data[j].mese=mese;
        array_data[j].codice=scelta;
        printf("rimanenza %5.2f", prodotto[scelta].rimanenza);
        }
        else{
            printf("LA MACCHINA ACCETTA SOLO BANCONOTE DA 5,10,20,50");
        }
    }
return 0;
}

aaa
27/05/17 14:26
WildBlood
Utilizza una funzione ricorsiva che prende in input il codice identificativo del caribarente e calcola il totale del carburante erogato.
aaa
27/05/17 14:53
Mikelius
mi sembra che qualcosa relativo al progetto molto simile ci sia in forum.. usa la funzione cerca.
Comunque Ti conviene dedicarti ad un progetto alla volta. Non voglio essere presuntuoso,
ma forse non hai le basi per dedicarti ad entrambi.
aaa
27/05/17 15:18
WildBlood
Postato originariamente da Mikelius:
mi sembra che qualcosa relativo al progetto molto simile ci sia in forum.. usa la funzione cerca.
Comunque Ti conviene dedicarti ad un progetto alla volta. Non voglio essere presuntuoso,
ma forse non hai le basi per dedicarti ad entrambi.



Purtroppo per l'esame che deve affrontare, sono necessarie sue progetti. Lo so perché l'ho fatto anche io.
aaa
27/05/17 19:39
AldoBaldo
Anch'io ricordo che in tempi molto recenti su questi schermi è comparso un esercizio ALMENO simile (se non identico). Se non è qui, son CERTO di averlo visto altrove, pari pari.

Edit: Non è questo?
pierotofy.it/pages/extras/forum/2/1060527-progetto_in_c/
Ultima modifica effettuata da AldoBaldo 27/05/17 19:46
ATTENZIONE! Sono un hobbista e l'affidabilità delle mie conoscenze informatiche è molto limitata. Non prendere come esempio il codice che scrivo, perché non ho alcuna formazione accademica e rischieresti di apprendere pratiche controproducenti.
27/05/17 23:32
Mikelius
Postato originariamente da AldoBaldo:

Anch'io ricordo che in tempi molto recenti su questi schermi è comparso un esercizio ALMENO simile (se non identico). Se non è qui, son CERTO di averlo visto altrove, pari pari.

Edit: Non è questo?
pierotofy.it/pages/extras/forum/2/1060527-progetto_in_c/

stesso problema stesso utente.
aaa
28/05/17 11:26
lumo
Questo topic è in violazione di una o più norme del regolamento: pierotofy.it/pages/extras/forum/2/78115-leggere_prima_di_postare_regolamento/
    
Ultima modifica effettuata da lumo 28/05/17 11:27
aaa