4 svar
99 visningar
Didar 212
Postad: 2 nov 2022 13:50 Redigerad: 2 nov 2022 13:51

hur räknar jag kvadranten med hjälp av pekare?

Hej jag har följande kod där jag försöker räkna ut kvadranten av ett tal som jag matar in.

Min sqrt funktion funkar som den ska men nu vill jag räkna kvadranten men jag får inte till det..

jag har gjort en ny pekare i min (squareroot) funktion som heter result och skrivit    *result = square * square;

 

Laguna Online 30711
Postad: 2 nov 2022 15:24

Du ger värdet 0 till kvadrant (men det heter kvadrat), och skickar det till funktionen. Där kvadreras det och läggs i *result, dvs. res.

Är det *number i kvadrat du vill ha där i stället?

Didar 212
Postad: 2 nov 2022 15:43
Laguna skrev:

Du ger värdet 0 till kvadrant (men det heter kvadrat), och skickar det till funktionen. Där kvadreras det och läggs i *result, dvs. res.

Är det *number i kvadrat du vill ha där i stället?

Om jag ska vara helt ärlig så är jag väldigt osäker på vad jag håller på med, det jag vill göra är att precis som sqrt funktionen som räknar roten ur ett tal så ska det finnas en annan kod som ska räkna ut kvadranten av det talet. Så ja antar att det är det jag vill ha som du skrev

manik 82
Postad: 6 nov 2022 01:25

Det kan vara lärorikt att fortsätta på ditt spår. Funktionen squareRoot har dock blivit ganska komplicerad. Den ska beräkna både kvadratrot och kvadrat, samt returnera en status (1 eller 0) som talar om ifall beräkningen gick bra. För att returnera mer än ett tal använder den pekare.

Ett alternativ är att skapa en ny funktion square som enbart beräknar kvadraten. Eftersom kvadraten av ett tal är definerad även för negativa tal blir den betydligt enklare:

float square(float number) {
  return number * number;
}

du kan anropa den från main-funktionen så här:

float squareResult = square(inputNumber);
Didar 212
Postad: 6 nov 2022 21:40
manik skrev:

Det kan vara lärorikt att fortsätta på ditt spår. Funktionen squareRoot har dock blivit ganska komplicerad. Den ska beräkna både kvadratrot och kvadrat, samt returnera en status (1 eller 0) som talar om ifall beräkningen gick bra. För att returnera mer än ett tal använder den pekare.

Ett alternativ är att skapa en ny funktion square som enbart beräknar kvadraten. Eftersom kvadraten av ett tal är definerad även för negativa tal blir den betydligt enklare:

float square(float number) {
  return number * number;
}

du kan anropa den från main-funktionen så här:

float squareResult = square(inputNumber);

jo det hade nog också funkat men problemet är att denna uppgift fick vi på en blockexamination och där skrev läraren att kvadrant funktionen ska ske i samma funktion som sqrt. Alltså i squareroot funktionen ;/

Svara
Close