ik heb deze week een oefening gekregen om op te lossen met array's
namelijk deze ==>
Oefeningen arrays:
Gebruik waar mogelijk een array.
1. Het aantal leerlingen van een klas is zeker niet groter dan 42. We voeren het aantal punten van de leerlingen in (max. is 100) en wensen de standaardafwijking te berekenen. De invoer wordt afgesloten met een negatief getal (laatste getal – dat niet geldig is – is negatief). Als n het aantal leerlingen voorstelt en p[1], p[2], … p[n] de punten en g het rekenkundig gemiddelde van deze punten, dan krijgt men de standaardafwijking met volgende formule:
SA = vierkantswortel( ((p[1]-g)²+(p[2])²+...+(p[n]-g)²) / n )
mijn grootste probleem is dat we nog nooit echt een oefening op arrays gemaakt hebben en dat de gebruikelijk for lus die bij veel voorbeeld arrays te zien is hier niet van toepassing zal zijn vermits er een stop van gegevens is bij punt die negatief zijn bv -6 en punten boven de 100
hopelijk kan iemand me helpen of op de juiste weg zetten
alvast bedankt
#include <stdio.h>
#include <conio.h>
void main()
{
int p[4]; // begin met 4 plaatsen i.p.v. 42 voor testen gemakkelijk te maken
int n,som;
do
{
for (n= 1;n<5;n++)
{
printf("\nGeef zijn score in: %d:",n);
scanf("%d",&p[n]);
}
}
while( n>0//n<101) ;
som=0 ;
for(n=0;n<5;n++)
{
som += p[n];
printf(" de gemis %d",som/(n-1)); // moet de formule nog aanpassen is maar als test
getch();
}
}
dit heb ik nu voorlopig maar mijn while wilt niet werken als ik mijn programma test geeft hij geen reactie bij getallen die negatief zijn of groter dan 100
namelijk deze ==>
Oefeningen arrays:
Gebruik waar mogelijk een array.
1. Het aantal leerlingen van een klas is zeker niet groter dan 42. We voeren het aantal punten van de leerlingen in (max. is 100) en wensen de standaardafwijking te berekenen. De invoer wordt afgesloten met een negatief getal (laatste getal – dat niet geldig is – is negatief). Als n het aantal leerlingen voorstelt en p[1], p[2], … p[n] de punten en g het rekenkundig gemiddelde van deze punten, dan krijgt men de standaardafwijking met volgende formule:
SA = vierkantswortel( ((p[1]-g)²+(p[2])²+...+(p[n]-g)²) / n )
mijn grootste probleem is dat we nog nooit echt een oefening op arrays gemaakt hebben en dat de gebruikelijk for lus die bij veel voorbeeld arrays te zien is hier niet van toepassing zal zijn vermits er een stop van gegevens is bij punt die negatief zijn bv -6 en punten boven de 100
hopelijk kan iemand me helpen of op de juiste weg zetten
alvast bedankt
#include <stdio.h>
#include <conio.h>
void main()
{
int p[4]; // begin met 4 plaatsen i.p.v. 42 voor testen gemakkelijk te maken
int n,som;
do
{
for (n= 1;n<5;n++)
{
printf("\nGeef zijn score in: %d:",n);
scanf("%d",&p[n]);
}
}
while( n>0//n<101) ;
som=0 ;
for(n=0;n<5;n++)
{
som += p[n];
printf(" de gemis %d",som/(n-1)); // moet de formule nog aanpassen is maar als test
getch();
}
}
dit heb ik nu voorlopig maar mijn while wilt niet werken als ik mijn programma test geeft hij geen reactie bij getallen die negatief zijn of groter dan 100
Laatst bewerkt: