Wpis z mikrobloga

@master6: jak to się robi? jestem jeszcze zielony, to właściwie moja pierwsza praca. Generalnie chodzi o to żeby użytkownik mógł wpisać 10 liczb z których program policzy średnią, ale ma działać to tak, żeby liczyło poprawnie średnią jeśli użytkownik wprowadzi np 7 liczb. Mój tok myślenia podpowiadał mi żeby po prostu wpisywać 0 w miejsca liczb które chcę pominąć
@Pathfinder007: @master6:

Tak to wygląda na chwilę obecną. Nie wiem jak mam zablokować wpisywanie tych liczb, chyba muszę mieć otwartą możliwość wpisywania wszystkiego. Nie znam żadnej komendy która sprawi, że 0 nie będzie dodawać się do zbioru. Domyślam się, że muszę zrobić tablicę bez określonej ilości danych, ale to nadal nie rozwiązuje do końca mojego problemu

#include
using namespace std;

int main ()
{
cout << "wpisz liczby" << endl
@malinq: zrób pętle do wczytywania zmiennej, wczytuj jej sobie do jakiejś zmiennej "tmp", potem patrzysz czy jest różna od zera, jeśli tak to dodajesz do jakiejś tablicy, a jeśli nie to nie.
@master6: jeżeli użytkownik miałby je wklepywać to chyba nie mam innego pomysłu, może nie tyle zmienne ale i tak by to musiało być

cin >> a[1]
cin >> a[2] itd... mylę się?
@malinq: bardzo dawno nie robiłem w c++, ale chyba jest coś takiego jak vector gdzie możesz dynamicznie dodawać elementy, wtedy robisz prostą pętle:

std::vector result;
int tmp;
for(int i = 0; i < n; i++) {
cin >> tmp;
if(tmp != 0) {
result.push_back(tmp);
}
}

i masz w result elementy różne od zera
@Pathfinder007: staram się jak mogę, ale nie wiem czy nie powinienem łyknąć więcej teorii zanim przystąpie do takich zadań. Z drugiej strony teorie bez praktyki mega ciężko się utrwala. Na chwile obecną mam coś takiego, ale nadal nie wiem co zrobić żeby mieć x który będzie równy liczbie wartości w zbiorze różnych od zera.
int main ()
{
cout << "wpisz liczby" << endl << endl;
int a[10];
cout << "Podaj
@malinq:

#include

using namespace std;

int main()
{
cout<<"Hello World";
int a[10];
float sum = 0;
int RealneOceny;
cout << "Podaj ocene z jezyka polskiego \n";
cin >> a[0];
cout << "Podaj ocene z jezyka angielskiego \n";
cin >> a[1];
cout << "Podaj ocene z matematyki \n";
cin >> a[2];
cout << "Podaj ocene z historii \n";
cin >> a[3];
cout << "Podaj ocene z wfu \n";
cin >> a[4];
cout
@malinq:
#include
using namespace std;

int main() {
cout << "Hello World";
int a[10];
int sum = 0;
short RealneOceny = 0;
float Srednia = 0;
cout << "Podaj ocene z jezyka polskiego \n";
cin >> a[0];
cout << "Podaj ocene z jezyka angielskiego \n";
cin >> a[1];
cout << "Podaj ocene z matematyki \n";
cin >> a[2];
cout << "Podaj ocene z historii \n";
cin >> a[3];
cout << "Podaj
Albo używając STL'a i pisząc w formie przekazywania intencji

std::vector v{ 0, 1, 2, 3, 4, 5 };
v.erase(std::remove_if(std::begin(v), std::end(v), [](int const a_value) { return a_value == 0; }), std::end(v));
auto const MEAN = std::accumulate(std::begin(v), std::end(v), 0) / static_cast(v.size() ? v.size() : 1);