[c] simulare salvadanaio

di il
5 risposte

[c] simulare salvadanaio

Scrivere un programma che simuli un salvadanaio. L'utente puo' inserire e prelevare soldi.
Visualizzare salvadanaio vuoto se non ci sono soldi. Il numero di operazioni di inserimento
e prelievo sono decise dall'utente. L'inserimento e il prelievo devono avvenire con la
chiamata a due procedure differenti.

5 Risposte

  • Re: [c] simulare salvadanaio

    #include <stdio.h>
    #include <stdlib.h>
    void inserimento(int [],int );
    void prelievo(int [],int );
    int main()
    {int i,salvadanaio[10],n;
    int volte_ins,volte_prel;
      printf("quante volte vuoi inserire i soldi\n");
      scanf("%d",&volte_ins);
      inserimento(salvadanaio,volte_ins);
    printf("quante volte vuoi prelevare i soldi:\n");
    scanf("%d",&volte_prel);
    prelievo(salvadanaio,volte_prel);
      n=volte_ins-volte_prel;
      for(i=0;i<n;i++){
      if(volte_ins==volte_prel)
       printf("il salvadanaio è vuoto\n");
       else
      printf("il salvadanaio contiene:%d\n",salvadanaio[i]);
    }
      system("PAUSE");	
      return 0;
    }
    void inserimento(int salvadanaio[],int volte_ins)
    {
         int i;
         printf("inserisci i soldi nel salvadanaio:");
         for(i=0;i<volte_ins;i++)
         scanf("%d",&salvadanaio[i]);
         }
    void prelievo(int salvadanaio[],int volte_prel)
    {
    printf("i soldi sono stati prelevati:%d\n",volte_prel);
    }
    
    sistemando un pò,
    mi è sorto un problema diverso: non riesco a visualizzare printf("il salvadanaio è vuoto\n");
  • Re: [c] simulare salvadanaio

    Controlla il tuo codice:
    
    n=volte_ins-volte_prel; //quì significa che n = 0 se la differenza è zero
      for(i=0;i<n;i++){ //se n=0 il ciclo for non viene eseguito :)
      if(volte_ins==volte_prel)
       printf("il salvadanaio è vuoto\n");
    
  • Re: [c] simulare salvadanaio

    n=volte_ins-volte_prel;
      for(i=0;i<n;i++){
      if(n==0)
       printf("il salvadanaio è vuoto\n");
       else
      printf("il salvadanaio contiene:euro%d\n",salvadanaio[i]);
    }
    anche facendo così, non riesco a visualizzare il savadanaio vuoto
  • Re: [c] simulare salvadanaio

    Il tuo for si blocca quì
    
    for(i=0;i<n;i++){
    
    quando n = 0, i non è minore di n (i=0 , n=0) quindi non entra nel ciclo for per niente.
  • Re: [c] simulare salvadanaio

    Ok l'ho spostato nel corpo del else

    funziona!!
Devi accedere o registrarti per scrivere nel forum
5 risposte