• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Liczby pseudolosowe, liczenie średniej

0 głosów
310 wizyt
pytanie zadane 5 grudnia 2018 w C i C++ przez Cevet Nowicjusz (120 p.)

Wydaje mi się, że wszystko działa poprawnie z wyjątkiem obliczania średniej. Nie wiem dlaczego nie liczy jej poprawnie. Ponadto często wyskakuje błąd, że program przestał działać. W czym tkwi problem?

#include <iostream>
#include <cstdlib>
#include <time.h>
/* losowanie n liczb, wypisywanie najmniejszej i najwiekszej wartosci
   sposrod wylosowanych, obliczanie sredniej */
using namespace std;

int a, n;
int * tab = new int[n];

int main()
{
	cout << "Ile razy program ma wylosowac liczbe z przedzialu <1,100>?" << endl;
	cin >> n;
	srand(time(NULL));
	for(int i=0; i<n; i++)
	{
		tab[i] = rand()%100+1;
		cout << tab[i] << ", ";
	}

	int max, min;
	int i=1;
	max = tab[0];
	min = tab[0];
	do
	{
		if(tab[i]<min)
			min = tab[i];
		if(tab[i]>max)
			max = tab[i];
		i++;
	}
	while(i<n);
	cout << endl << "Wartosc najmniejsza"<< endl << min << endl;
	cout << "Wartosc najwieksza" << endl << max << endl;

	int suma = 0;
	float srednia;
	for(int i=0; i<n; i++)
		suma += tab[i];
	srednia = suma/n;
	cout << "Srednia = " << srednia << endl;
	system("pause");

	return 0;
}

 

1 odpowiedź

0 głosów
odpowiedź 5 grudnia 2018 przez PanRik Gaduła (4,510 p.)
edycja 6 grudnia 2018 przez PanRik
int a, n;
int * tab = new int[n];

Tworzysz tablice , gdzie rozmiar nie jest zainicjalizowany. W sensie zmienna n to jakiś śmieć z pamięci. jest 0.

 

1
komentarz 6 grudnia 2018 przez monika90 Pasjonat (22,940 p.)
żaden śmieć, n jest równe zero.
komentarz 6 grudnia 2018 przez PanRik Gaduła (4,510 p.)
Faktycznie :)

Podobne pytania

0 głosów
2 odpowiedzi 2,566 wizyt
pytanie zadane 4 listopada 2017 w C i C++ przez mn130496 Gaduła (3,640 p.)
0 głosów
1 odpowiedź 1,617 wizyt
–1 głos
2 odpowiedzi 906 wizyt
pytanie zadane 11 listopada 2016 w C i C++ przez Paweł Celuch Początkujący (420 p.)

93,741 zapytań

142,676 odpowiedzi

323,294 komentarzy

63,323 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...