Kent hier iemand iets van C++?

vbimport

#1

Zou iemand mij dit eens willen oplossen als het gaat?

Beschrijving:
Bereken de kubieke wortel van de getallen -12 t/m +9 in stappen van 2.
De kubieke wortel van een getal is nul als het getal nul is, -EXP(LOG(-x)/3.0 voor negatieve
getallen en EXP(LOG(x)/3.0) voor positieve getallen. Praktisch gezien gaan we een getal niet testen of het nul is, maar of het in absolute waarde kleiner is dan een zeer klein getal (bv. 0,000001)

Programma:

  • voorzie constanten voor -12, +9 en 2 voor de testgetallen -7 en -3.
  • maak gebruik van een constante voor het klein getal dEPSILON=0,000001.
  • bereken in een lus de kubieke wortel voor elk getal.
  • deze berekening zelf moet een double functie gebeuren. (zie formule)
  • het testen of de absolute waarde van een getal kleiner is dan EPSILON gebeurt in deze functie met behulp van abs(getal)
  • druk op een lijn een getal af met zijn kubieke wortel, behalve voor de getallen tussen -7 en -3.
  • het afdrukken moet via een void functie gebeuren.
  • de doubles worden weer gegeven met een veldbreedte van 10 en met 4 decimalen.

#2

Dat vroeg de leraar ook al zeker.

sorry m8 al 1,5 jaar geen C++ meer gehad… zou is tijd worde dat ik dat weer’s een beetje ophaal.


#3

Ik heb morgen examen van die nest.
En ik ken er NIETS van.
De kans bestaat er in dat IK dezelfde oefening ga krijgen als deze hier.
Dus als iemand deze kan oplossen dan zou ik dat heeel fijn vinden :slight_smile:


#4

Zou dit juist kunnen zijn ?

#include <stdio.h> // Nodig voor printf functies
#include <math.h> // Nodig voor de wiskundige berekeningen

// CONSTANTS ////////////////////////////////////////////////////////////////

#define MIN_TWELFE -12
#define MIN_SEVEN -7
#define MIN_THREE -3
#define PLUS_NINE 9

#define dEPSILON 0.000001

// FUNCTION DECLARATIONS ////////////////////////////////////////////////////

double cubic(int number);
void printme(int getal, double result);
int main(int argc, char* argv[]);

// FUNCTIONS ////////////////////////////////////////////////////////////////

double cubic(int number)
{
// Bereken de kubieke wortel van een getal

// Getal is nul
if ( abs(number) < dEPSILON ) { return 0.0; }

// Negatief getal
if ( number < 0 ) { return (-log(-number)); }

// Positief getal
return (log(number));
}
/////////////////////////////////////////////////////////////////////////////

void printme(int getal, double result)
{
// Functie wordt gebruikt om een getal en een resultaat af te drukken
//
printf("Kubieke wortel van %3d bedraagt %10.4f
", getal, result);
}

/////////////////////////////////////////////////////////////////////////////

int main(int argc, char* argv[])
{
int index;

// Bereken kubieke wortel
//
for ( index = MIN_TWELFE ; index <= PLUS_NINE ; index+=2)
{
// Wanneer het tussen -7 en -3 is printen we niet
//
if ( (MIN_SEVEN < index) && (index < MIN_THREE) ) { continue; }

printme(index, cubic(index));
}
return(0);
}

[Edited by fordcapri on 13-03-2001 at 21:22]


#5

In een snelle oogopslag ziet dit er wel goed uit… soms vinnik wat overbodig ofzow maar ik denk dat het wel aan het werken te krijgen moet zijn volgens dit model

p.s. ik weet nix van die kubieke wortel af (of is dat hetzelfde als de “standaard” wortel?) en ik heb het niet gecontroleerd op fouten zoals verkeerder pointer verwijzingen enzo…


#6

Bedankt iedereen.
Heb vandaag er examen van gehad.
Met wat spiek werk heb ik toch redelijk goed.
En shit, ik had niet dezelfde oefening :frowning:

thx