programowanie c++
Olunia: Program w c++ , który znajduje i wypisuje liczbe elementów z tablicy mniejszych niż ta średnia
include <iostream>
#include<cstdlib>
#include<ctime>
using namespace std;
int rozm;
void losowanie (int tablica[])
{
srand(time(NULL));
for(int i=0; i<rozm ; i++)
tablica[i]=rand() %128;
}
void wypisz(int tablica[])
{
for(int i=0 ; i<rozm ; i++)
cout<<tablica [i]<<endl;
}
int main()
{
cout << " Podaj mi liczby losowan n :" << endl;
cin >> rozm;
int*tablica= new int [rozm];
losowanie (tablica);
wypisz (tablica);
return 0;
}
Bardzo proszę o pomoc jak to zrobic
undefined
30 maj 23:41
Metis: Rozumiem, że chodzi o algorytm, który liczy średnią wszystkich wartości tablicy i następnie
wyświetla te indexy wraz z wartościami które są mniejsze od tej średniej ?
Jeśli tak:
Iteruj po kolejnych elementach tablicy sumując wartości z counterem;
Średnią przypisz do zmiennej, a następnie iteruj znowu po elementach tablicy i sprawdzaj w
warunku czy średnia mniejsza równa i'temu elementowi tablicy.
31 maj 00:23
Metis: Sprecyzuj polecenie. Nie rozumiem skąd u Ciebie losowanie − rand.
31 maj 00:24
jc:
#include<iostream>
using namespace std;
double srednia(int n, double tab []){
double s = 0;
for(int i = 0; i < n; i++) s+=tab[i];
return s/n;
}
void wypisz(int n, double v, double tab[]){
for(int i = 0; i < n; i++) if( tab[i] < v) cout<< tab[i] << endl;
}
int main(){
double tab[ ] = {1,3,5,3,7,4,2,8,9};
double v = srednia(9, tab);
wypisz(9, v, tab);
return 0;
}
31 maj 00:52
Olunia: Bardzo dziękuje . Ale jeszcze proszę o pomoc , w której funkcji i gdzie wpisac komende , która
pobierze te liczby i wykona polecenie ?
31 maj 11:29
Olunia: Tak aby te liczby nie były wpisane w tablicy tylko użytkownik mógl je sam wpisac
31 maj 11:32
jc: No to zmień main().
int main(){
int n;
cin >> n;
double tab[n];
for(int i=0; i<n; i++) cin >> tab[i];
double v = srednia(n, tab);
wypisz(n, v, tab);
return 0;
}
31 maj 12:02
Olunia: Dziękuje bardzo
31 maj 12:48
Dziadek Mróz:
Nasz program z
354461
plus na końcu liczenia średniej:
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
for (size_t indeks = 0; indeks < ile_liczb; indeks++) {
if (tablica_liczb[indeks] < srednia) {
std::cout << " " << tablica_liczb[indeks];
}
}
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
https://pastebin.com/162MLeLe
31 maj 16:55