Vai al contenuto

Un piccolo aiuto!


Messaggi raccomandati

Ciao!

Stavo cercando di fare un programmino in C ma, essendo un principiante, con i decimali sto impazzendo!

Il programma dovrebbe fare questo:

- Dichiarare (e inizializzare a 0) 3 variabili. ("cifra iniziale", "tasse" e "cifra finale").

- Chiedere l'inserimento di una cifra in € e memorizzarla in una delle variabili ("cifra iniziale").

- Calcolare la variabile "tasse" facendo: "tasse" = (("cifra iniziale"/100)*3.4)+0.35 .

- Calcolare la variabile "cifra finale" facendo "cifra finale"="cifra iniziale"-"tasse".

- Stampare il "valore finale" e le "tasse".

(gestendo cifre in € mi interessano solo 2 decimali)

I miei problemi sono che non so come dichiarare le variabili e non so come "memorizzare" la cifra inserita con i decimali ( scanf ("????", cifra iniziale); ).

C'è qualcuno così paziente, nel giorno di Natale (!!!!), che mi potrebbe scrivere il codice sorgente per un programma come questo di modo che possa confrontarlo con quello che ho provato a scrivere io per capire cosa ho sbagliato?

Grazie mille e auguri!! :ciao:

- MacBook Unibody 13.3", 2.0 GHz, 4 Gb di Ram

- iPhone 3GS 16 Gb Black

- iPod Touch 1G 32 Gb

- iPod Nano 1G 4Gb

Link al commento
Condividi su altri siti

Questo è il codice da completare:

#include <stdio.h>

int main( void )

{

??? value;

??? tax;

??? total;

printf("Qual'è la cifra del pagamento? € ");

scanf("???", value);

tax = ((value/100)*3.4)+0.35;

total = value - tax;

printf("\nLe tasse ammontano a %.2f€.\nIl pagamento ricevuto dal venditore è %.2f€." tax, total);

}

- MacBook Unibody 13.3", 2.0 GHz, 4 Gb di Ram

- iPhone 3GS 16 Gb Black

- iPod Touch 1G 32 Gb

- iPod Nano 1G 4Gb

Link al commento
Condividi su altri siti

Il tipo di dato delle variabili dipende dal numero che si vuole rappresentare:

- Numeri interi: int, short e long (con e senza segno)

- Numeri reali o a virgola mobile: float, double e long double (solo con segno)

Chuck Norris disse Kung, e Kung Fu.

Link al commento
Condividi su altri siti

Il tipo di dato delle variabili dipende dal numero che si vuole rappresentare:

- Numeri interi: int, short e long (con e senza segno)

- Numeri reali o a virgola mobile: float, double e long double (solo con segno)

Ma nooooo facevo un errore errore stupidissimo!! Mi ero dimenticato il & in"scanf("%f", &value);"! Ecco perchè non mi funzionava!!!

Un'altra cosa, con l'ultima versione di xCode c'è un modo per vedere, al termine del programma (o anche durante), il valore delle variabili? Per esempio, se io non stampassi la variabile "tax", tramite xCode riesco ad andare a vedere che valore è assegnato alla variabile? (Escludendo il printf variabile ed i breakpoints che non possono essere usati durante una iterazione e non posso usarli quando voglio (devo decidere quando usarli prima di lanciare il programma)).

- MacBook Unibody 13.3", 2.0 GHz, 4 Gb di Ram

- iPhone 3GS 16 Gb Black

- iPod Touch 1G 32 Gb

- iPod Nano 1G 4Gb

Link al commento
Condividi su altri siti

Non te lo so dire, perchè , a dir la verità, non ho ancora un Mac (per ora).

Ho provato a risponderti in base alle mie conoscenze del linguaggio.

Ah ok!

Magari interverrà qualcuno di più ferrato su xCode!

Intanto grazie mille ed augurii!!

- MacBook Unibody 13.3", 2.0 GHz, 4 Gb di Ram

- iPhone 3GS 16 Gb Black

- iPod Touch 1G 32 Gb

- iPod Nano 1G 4Gb

Link al commento
Condividi su altri siti

Ma nooooo facevo un errore errore stupidissimo!! Mi ero dimenticato il & in"scanf("%f", &value);"! Ecco perchè non mi funzionava!!!

Un'altra cosa, con l'ultima versione di xCode c'è un modo per vedere, al termine del programma (o anche durante), il valore delle variabili? Per esempio, se io non stampassi la variabile "tax", tramite xCode riesco ad andare a vedere che valore è assegnato alla variabile? (Escludendo il printf variabile ed i breakpoints che non possono essere usati durante una iterazione e non posso usarli quando voglio (devo decidere quando usarli prima di lanciare il programma)).

L'unico modo per vedere i valori delle variabili è con printf o con debugger (quindi usando i breakpoints), quello che dici tu non si può fare. Inoltre: stai attento allo scanf, è pericoloso

Un Tetris in vecchio stile, dedicato alla versione per Mac degli anni 80.

Link al commento
Condividi su altri siti

Cioè? Morde?

Più o meno... XD

Comunque lo scanf crea/può creare problemi col buffer: metti un while(getchar()!='\n'); dopo ogni scanf, così eviti problemi (se sei su Windows puoi usare fflush(stdin); ma su Mac (e su Linux) mi da problemi... non so il perché)

iMac 27" ------ Macbook Air 13" ------ iPhone 3GS Black 16GB ------ iPhone 5 Black 32GB ------ 2 iPod Shuffle 1GB

Link al commento
Condividi su altri siti

Archiviato

Questa discussione è archiviata e chiusa a future risposte.

×
×
  • Crea Nuovo...