Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  8 1429
Hei Freaks

Har akkurat startet med C-programmering og håper noen her kunne kommet med en hjelpende hånd da jeg står litt fast.

Bruker Microsoft Visual C 2010 express for å kode og kompilere.

Akkurat nå prøver jeg å lage et enkelt program for å regne ut arealet av en trekant basert på lengden av grunnlinjen og høyden.

Dette er koden jeg har skrevet:

[COLOR="Blue"][/COLOR][COLOR="Blue"]#include[/COLOR] [COLOR="Red"]<stdio.h>[/COLOR]
[COLOR="blue"]#include[/COLOR] [COLOR="red"]<stdlib.h>[/COLOR]

[COLOR="Blue"]int main[/COLOR] ([COLOR="Blue"]int[/COLOR] argc, [COLOR="blue"]char[/COLOR] **argv)

{
[COLOR="blue"]float[/COLOR] hoyde;
[COLOR="blue"]float [/COLOR]lengde;
[COLOR="blue"]float[/COLOR] areal;


printf([COLOR="Red"]"Oppgi trekantens hoyde:"[/COLOR]);
scanf([COLOR="red"]"%f"[/COLOR], &hoyde[COLOR="Red"]);[/COLOR]

printf([COLOR="red"]"Oppgi trekantens lengde:"[/COLOR]);
scanf ([COLOR="red"]"%f"[/COLOR], &lengde[COLOR="red"]);[/COLOR]

areal = 0.5*(hoyde*lengde);

printf([COLOR="red"]"Arealet av trekanten er: %f"[/COLOR],areal);

system([COLOR="red"]"PAUSE"[/COLOR]);
[COLOR="Blue"]return[/COLOR] 0;

}

Problemet er at når jeg skal debugge (det samme som kompilering?) koden får jeg opp en feilmelding som sier "There were build errors. Would you like to continue and run the last succesful build" Noen som klarer å se feil i koden som kan føre til dette?

Takker så mye på forhånd
Kompilerer fint i gcc. Hva med å inkludere selve feilmeldingen fra kompilatoren?
Trigonoceps occipita
vidarlo's Avatar
Donor
Du får antakeleg opp ei liste over nemde build errors. Kva seier dei?
Får ikke opp noen liste over build errors. Her er bilde av feilmeldingen som kommer opp:

http://bildr.no/thumb/SVJrbGls.jpeg

Der fikk jeg det til å fungere, hadde lagret programmet i en mappe som ikke tilhørte Visual C->Projects så den fant ikke filen når programmet skulle kjøres. Men takk for hjelp uansett
Nå som jeg først har dere så benytter jeg sjansen til å spørre om en annen ting også:

Når jeg kjører programmet og har skrevet inn lengde og høyde på trekanten så får jeg opp arealet, men svaret kommer med 6 desimaler i tillegg, noe som jeg ikke trenger. Vet dere hva jeg kan gjøre for å bestemme antall desimaler i svaret selv, eller ihvertfall at det blir litt færre desimaler i svaret?
Trigonoceps occipita
vidarlo's Avatar
Donor
Sitat av mathiasxx94 Vis innlegg
Når jeg kjører programmet og har skrevet inn lengde og høyde på trekanten så får jeg opp arealet, men svaret kommer med 6 desimaler i tillegg, noe som jeg ikke trenger. Vet dere hva jeg kan gjøre for å bestemme antall desimaler i svaret selv, eller ihvertfall at det blir litt færre desimaler i svaret?
Vis hele sitatet...
Fortsettje med boka du held på med, eller lære deg å google. Greie stikkord er t.d. 'rounding numbers c' som bør gi minst en million treff.
Sitat av mathiasxx94 Vis innlegg
Nå som jeg først har dere så benytter jeg sjansen til å spørre om en annen ting også:

Når jeg kjører programmet og har skrevet inn lengde og høyde på trekanten så får jeg opp arealet, men svaret kommer med 6 desimaler i tillegg, noe som jeg ikke trenger. Vet dere hva jeg kan gjøre for å bestemme antall desimaler i svaret selv, eller ihvertfall at det blir litt færre desimaler i svaret?
Vis hele sitatet...
https://www.google.no/search?q=print...er+of+decimals

det google søket gir masse god hjelp
http://stackoverflow.com/questions/7...-decimal-point

http://stackoverflow.com/questions/4...s-using-printf

Kode

#include <stdio.h>
#include <stdlib.h>

int main (int argc, char **argv)

{
	float hoyde;
	float lengde;
	float areal;

	printf("Oppgi trekantens hoyde:");
	scanf("%f", &hoyde);

	printf("Oppgi trekantens lengde:");
	scanf ("%f", &lengde);

	areal = 0.5*(hoyde*lengde);

	printf("Arealet av trekanten er: %.2f", areal);

	return 0;
}
Høyde: 12
Lengde: 12

Output: Arealet av trekanten er: 72.00

Kilde: http://stackoverflow.com/questions/7...mal-point-in-c
Sist endret av s1gh; 4. september 2013 kl. 21:37.