Springen naar inhoud

Wiskundige vereenvoudiging


  • Log in om te kunnen reageren

#1

fundum19

    fundum19


  • 0 - 25 berichten
  • 6 berichten
  • Gebruiker

Geplaatst op 16 februari 2010 - 15:38

Ik moet voor school volgende oefening maken:

Schrijf een ASP.NET webapplicatie voor het berekenen van volgende reeks


y = 1 + x + x2 + x3 + x4 + Ö + xn

Maak gebruik van het stramien van de oefening FutureValue. Variabelen zijn x (reŽel getal) en n (geheel getal). x moet liggen tussen 1.0 en 100.0 en n tussen 0 en 100.


Dus via een textbox moeten ze x en n ingeven. De berekeing voor dit te doen vind ik maar niet zou iemand mij kunnen helpe.

Ik zou dit dan in een methode schrijven iets in de genre van:

return (kapitaal + (kapitaal * intrest / 100));

Maar dit is toch gelijk een ander soort wiskunde iemand hier een oplossing of ervaring mee.

Dank bij voorbaat

Dit forum kan gratis blijven vanwege banners als deze. Door te registeren zal de onderstaande banner overigens verdwijnen.

#2

Xenion

    Xenion


  • >1k berichten
  • 2606 berichten
  • Moderator

Geplaatst op 16 februari 2010 - 15:44

Ik neem aan dat je een functie hebt.

(pseudocode)
function x(n as integer) as real
   'berekeningen die n gebruiken
   return resultaat
end

Dan kan je toch simpel een code in deze vorm gebruiken.

dim y as real = 1
for i as integer = 1 to n
   y = y + x(n)
next

#3

fundum19

    fundum19


  • 0 - 25 berichten
  • 6 berichten
  • Gebruiker

Geplaatst op 16 februari 2010 - 16:05

dus al ik me niet vergis moet dit het resultaat worden:



private integer Resultaat (int x, real n)
{
dim y as real = 1;
dim i as integer;
for i = 1 to n;;
y = y + x( n);
next ;
return y;

}

#4

Xenion

    Xenion


  • >1k berichten
  • 2606 berichten
  • Moderator

Geplaatst op 16 februari 2010 - 16:12

Nee je hebt wel 2 verschillende functies nodig.

1 functie x(n) waarmee je de numerieke rij als het ware definieert en waarmee je dus voor elke n de bijhorende x waarde kan uitrekenen.

Daarnaast heb je ergens anders in je programma die for-lus nodig om y = 1 + "som van die numerieke rij" uit te rekenen.

Wiskundig is er niks aan te vereenvoudigen. Dit is gewoon een simpel programmeer-oefeningetje lijkt me.

#5

Xenion

    Xenion


  • >1k berichten
  • 2606 berichten
  • Moderator

Geplaatst op 16 februari 2010 - 16:24

Iemand wijst me er net op dat je notatie nogal dubbelzinnig is.

Wat is xn juist? Ik ga er van uit dat je een numerieke rij met algemene term gekregen hebt waarvan je de som moet uitrekenen. Is dat wat je nodig hebt of bedoel je eigenlijk gewoon x*n?

#6

fundum19

    fundum19


  • 0 - 25 berichten
  • 6 berichten
  • Gebruiker

Geplaatst op 16 februari 2010 - 16:56

sorry dat ik wat lastig doe hoor maar ik zit in mijn eerste jaar multimedia en dit programeren is nog zeer nieuw voor mij en verwarrend.

trekt dit er dan al wat meer op :
double y = 1;
int x, n, i;
private int Resultaat (int x, real n)
{

for (i = 1; i <= n; y = y + x^n) ;
return y;

}

private int x(int n)
{
i = x ^ n;
}

wel c# code maar principe blijft hetzelfde hť

Veranderd door fundum19, 16 februari 2010 - 16:58


#7

Tommeke14

    Tommeke14


  • >250 berichten
  • 771 berichten
  • Ervaren gebruiker

Geplaatst op 16 februari 2010 - 17:04

wat is het nu?
x^n of x*n of xn?

Het principe lijkt me alleszins juist

#8

fundum19

    fundum19


  • 0 - 25 berichten
  • 6 berichten
  • Gebruiker

Geplaatst op 16 februari 2010 - 17:28

ja dat klopt maar toch heeft het foutmelding :eusa_whistle:

#9

Xenion

    Xenion


  • >1k berichten
  • 2606 berichten
  • Moderator

Geplaatst op 16 februari 2010 - 17:29

Ok ik denk dat ik nu snap wat je bedoelt:

Je hebt dus eigenlijk LaTeX

In wiskundige notatie is dat een sommatie: LaTeX

Voor dit soort 'problemen' gebruik je dus meestal de for-loop. Je kan ook spelen met while en until loops enzo, maar de for loop is hier het meest geschikt voor.

Het is dus simpel opgelost met:

private real Resultaat (real x, int n)
{
   double y = 0;
   for (int i = 0; i <= n; i++)
	  y = y + x^i;
   return y;
}

Qua structuur zou het er zo moeten uitzien. De declaratie van variabelen en eventuele typecasting moet je misschien nog verbeteren. Ik heb zelf nooit echt geprogrammeerd in C#.


Je haalt in je post hierboven reals, ints en doubles door elkaar en wijst verkeerde types toe aan de variabelen. Je syntax voor de if-loop lijkt me ook niet helemaal in orde. Als je alles nog niet vanbuiten kent moet je wel in staat zijn van de nodige informatie zelf op te zoeken.

Veranderd door Xenion, 16 februari 2010 - 17:31


#10

fundum19

    fundum19


  • 0 - 25 berichten
  • 6 berichten
  • Gebruiker

Geplaatst op 16 februari 2010 - 19:47

Van harte bedankt na enkele aanpassingen werkte het perfect.

Ik zal in de toekomst nog wat meer opzoekwerk doen voor ik vragen zal stellen. Maar ik was in de verkeerde richting aan het zoeken deze middag.

Groetjes





0 gebruiker(s) lezen dit onderwerp

0 leden, 0 bezoekers, 0 anonieme gebruikers

Ook adverteren op onze website? Lees hier meer!

Gesponsorde vacatures

Vacatures