Avatar billede dalbjerg Nybegynder
26. august 2002 - 18:34 Der er 20 kommentarer og
1 løsning

Simpel kode

Hejsa

I min skole skal jeg til at lære C++. og vi har fået udleveret en bog vi skal læse, og det har jeg gjodt, og jeg har skrevet følgende kode:
/* Opgave 1.1 -- Lav et program som: */
/*                a. indlæser en startkapital & en slutkapital.*/
/*                b. Beregner og udskriver kapitalens tilvækst i procent */

#include <stdio.h>

void main()
{
  int start, slut, til, tile;

  printf("Skriv din startkapital: ");
  scanf("%f", &start);
  printf("Skriv din slutkapital: ");
  scanf("%f", &slut);

  til = (((slut - start) * 100) / slut);
     

  printf("Tilvækst: %d", til);
}

(i turbo c++)

men den siger Division med nul eller numerisk overløb, hva betyder det ??
Avatar billede dalbjerg Nybegynder
26. august 2002 - 18:35 #1
start giver jeg 4 og slut giver jeg 8
Avatar billede kichian Nybegynder
26. august 2002 - 18:37 #2
At slut er 0 (nul). Derudover bør start og slut være float.
Avatar billede blyno Praktikant
26. august 2002 - 18:39 #3
Kris Jamsa ?
Avatar billede dalbjerg Nybegynder
26. august 2002 - 18:40 #4
oki, det var det float, som drillet...

Gider du kort foreklare hvad forskellen er på de 2?
Avatar billede dalbjerg Nybegynder
26. august 2002 - 18:41 #5
blyno ??
Avatar billede blyno Praktikant
26. august 2002 - 18:43 #6
Bare om det var fra hans bog ?
Hvis du skal igang med c++ kan jeg anbefale Kris Jamsa's bog c++. Den giver ikke den dybe viden men er god(og til at betale) til at starte på.
Avatar billede kichian Nybegynder
26. august 2002 - 18:46 #7
float er et decimaltal. int er et heltal. Disse er repræsenteret meget forskelligt.
Avatar billede tosssen Nybegynder
26. august 2002 - 18:46 #8
Vil du vide forskellen på float og int er?
Avatar billede dalbjerg Nybegynder
26. august 2002 - 18:46 #9
Vi har fået at vide vi skal købe en eller anden gamle bog fra 1991 af Finn Elvekjær så det har jeg så gjordt :)
Avatar billede dalbjerg Nybegynder
26. august 2002 - 18:47 #10
tosssen ja tak
Avatar billede tosssen Nybegynder
26. august 2002 - 18:55 #11
Alle datatyper er i sidste ende bytes, dvs. nuller og et-taller. Hver datatype er repræsenteret af bytes på sin egen måde, dvs. at hvis man forsøge at læse en variabel af typen float som om den var en int, så opstår der en fejl.
Hvis man gerne vil lave en type om til en anden kan man gøre følgende:

Dette laver en int om til en float:

float variabelFloat = static_cast<float>(variabelInt)

Man kan selvfølgelig også gøre det omvendte.
Avatar billede dalbjerg Nybegynder
26. august 2002 - 18:58 #12
men fatter stadigt ikke hvad forskellen er...
Avatar billede kichian Nybegynder
26. august 2002 - 19:01 #13
Forskellen er at tal ikke nødvendigvis er det samme tal!!!.
Der er ingen decimaler i en int. Det er der på en float. Derfor bliver de "gemt" forskelligt.
Prøv at læse op på de forskellige datatyper.
Avatar billede tosssen Nybegynder
26. august 2002 - 19:06 #14
int:
Denne datatype kan kun repræsentere heltal, dvs. -6, 5, 432,...

float:
denne datatype kan repræsentere decimaltal, som man ofte angiver med et f efter tallene. Eks.: 0.0f  46.8f  0.654f

Jeg tror dit problem er at du ser på tallene som om de står på et stykke papir. I det tilfælde er der ikke den store forskel på tallene, men det er der når en computer skal repræsentere dem ved hjælp af bytes. Det bliver vi bare nødt til at leve med ;-)
Avatar billede dalbjerg Nybegynder
26. august 2002 - 19:08 #15
ja oki altså int, til helttal & float til decimal tal, så er jeg med... :)
Avatar billede dalbjerg Nybegynder
26. august 2002 - 19:08 #16
hva gør f så bar decimal talet ?
Avatar billede tosssen Nybegynder
26. august 2002 - 19:15 #17
For at gøre forvirring endnu større, så findes der en type mere til decimaltal. Denne type hedder double og den er mere præcis end float, dvs den kan indeholde flere cifre end float. Compilerens standart type for decimaltal er double, så for at fortælle compileren at vores tal er et float tal er vi nødt til at føje f'et til.
Man kunne således fristes til at tro at man så lige så godt altid kan bruge typen double, men her har float en fordel, idet den optager mindre hukommelse. Man skal således selv vælge hvad der er vigtigst, præcision eller at spare hukommelse.
Avatar billede dalbjerg Nybegynder
26. august 2002 - 19:18 #18
oki, så tro jeg fik det på plads :)
Avatar billede dalbjerg Nybegynder
26. august 2002 - 19:19 #19
tosssen vil du gerne havde point?, så opretter jeg lige et spørgsmål til dig hvis du vil...
Avatar billede tosssen Nybegynder
26. august 2002 - 19:24 #20
Jo tak, det vil jeg da gerne ;-)
Avatar billede dalbjerg Nybegynder
26. august 2002 - 19:28 #21
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester