Pagina 1 di 1

[ C ] semplice programma per il calcolo dell'area di un rettangolo

Inviato: giovedì 22 luglio 2010, 17:09
da martiny
ecco il codice

#include

int main ()
{
int base;
int high;
int area = base*high;
printf("\t calcolare l'area di un rettangolo \n");
printf("Scrivi il valore della base: ");
scanf("%d", &base);
printf("Scrivi il valore dell'altezza");
scanf("%d", &high);
printf(" l'area di questo rettangolo è %d", area);
}

eppure non lo compila gcc come mai?? è un semplice programma che va col terminale xke sono alle prime armi!! ;D ;D ;D

Re: [ C ] semplice programma per il calcolo dell'area di un rettangolo

Inviato: giovedì 22 luglio 2010, 17:10
da Zoff
Quel codice deve compilare...

Al massimo può mostrare un warning che ti avvisa che manca il return in fondo al main...

Re: [ C ] semplice programma per il calcolo dell'area di un rettangolo

Inviato: giovedì 22 luglio 2010, 17:16
da martiny
Ci sono riuscito ...ma perchè anche per una semplice operazione come 1 per 1 mi da 987402940 ??

Re: [ C ] semplice programma per il calcolo dell'area di un rettangolo

Inviato: giovedì 22 luglio 2010, 17:17
da Zoff
Perché l'operazione la fai PRIMA di assegnare 1 alle variabili...

Devi metterla dopo le scanf()

Re: [ C ] semplice programma per il calcolo dell'area di un rettangolo

Inviato: giovedì 22 luglio 2010, 17:27
da martiny
in effetti hai ragione ma perchè è cosi..cioè quando scrivo alla fine area non dovrebbe richiamarsi alla variabile area che moltiplica le variabili base e high a cui vengono assegnate i valori da me scelti con scanf??
Perchè anche se scrivo una costante non funziona ad esempio:
#DEFINE area= base*high;

??

Re: [ C ] semplice programma per il calcolo dell'area di un rettangolo

Inviato: giovedì 22 luglio 2010, 17:28
da Zoff
Perché lo fai prima di assegnare un valore a base e high...

Re: [ C ] semplice programma per il calcolo dell'area di un rettangolo

Inviato: giovedì 22 luglio 2010, 17:38
da martiny
e se scrivo cosi il codice allora dovrebbe funzionare lo stesso

Codice: Seleziona tutto

#include<stdio.h>
#define AREA = base * high;

main ()
{
int base;
int high;
printf("\t calcolare l'area di un rettangolo \n");
printf("Scrivi il valore della base: ");
scanf("%d", &base);
printf("Scrivi il valore dell'altezza");
scanf("%d", &high);
printf("l'area di questo rettangolo è %d" , AREA );
}
però non va il terminale mi dice
martin@martin-desktop:~/Scrivania$ cc zx.c
zx.c: In function ‘main’:
zx.c:13: error: expected expression before ‘=’ token
martin@martin-desktop:~/Scrivania$

Re: [ C ] semplice programma per il calcolo dell'area di un rettangolo

Inviato: giovedì 22 luglio 2010, 17:48
da Zoff
Se avessi scritto bene la sintassi sì :P

Codice: Seleziona tutto

#include<stdio.h>
#define AREA  base * high

int main ()
{
    int base;
    int high;
    printf("\t calcolare l'area di un rettangolo \n");
    printf("Scrivi il valore della base: ");
    scanf("%d", &base);
    printf("Scrivi il valore dell'altezza");
    scanf("%d", &high);
    printf("l'area di questo rettangolo è %d" , AREA );
    return 0;
}

Re: [ C ] semplice programma per il calcolo dell'area di un rettangolo

Inviato: giovedì 22 luglio 2010, 17:53
da martiny
ho capito l'errore..non ci va l'uguale al define e inoltre il punto e virgola non serve d'altronde come non serve in #include
grazie tante, accolgo l'occasione per ringraziare questo forum per la qualità e velocità delle risposte, un supporto tecnico online efficiente..che da un passo in più anche ad ubuntu.

ma il return a che cosa serve perchè a me compila il programma anche senza.

Re: [ C ] semplice programma per il calcolo dell'area di un rettangolo

Inviato: giovedì 22 luglio 2010, 18:07
da Zoff
martiny ha scritto: ma il return a che cosa serve perchè a me compila il programma anche senza.
Un programma dovrebbe sempre restituire un valore.
Se va a buon fine quel valore è convenzionalmente 0.