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

question-closed Resetowanie danych przy petli

Object Storage Arubacloud
0 głosów
400 wizyt
pytanie zadane 3 maja 2017 w C i C++ przez Mordi Nowicjusz (160 p.)
zamknięte 4 maja 2017 przez Mordi
Witam serdecznie wszystkich forumowiczów. To mój pierwszy post.
Natrafiłem na problem z poziomu podstawowego (Uczę się zaledwie kilka dni).
W poniższym kodzie chciałem zrobić program który wyliczy średnia na podstawie ilości liczb wprowadzonych przez użytkownika,
jednak przy powtarzaniu pętli program pamięta poprzednie wartości i dolicza je do nowo wpisanych.
Czy da się zrobić tak żeby te wartości resetowały się po każdej pętli? 
 
#include <iostream>
#include <stdio.h>
#include <windows.h>
#include <cstdlib>

using namespace std;

float oceny[100]; float suma=0, srednia=0;
int liczba;

int main()
{
        for(;;)
{

    cout<<"z ilu liczb bedziesz liczyc srednia:  ";
    cin>>liczba;


    for (int i=0; i<liczba;i++)
    {
        cout<<endl<<"Podaj "<<i+1 <<" liczbe:  ";
        cin>>oceny[i];

        suma += oceny[i];

    }

    cout<<endl<<"suma "<<suma<<endl;
    srednia=suma/liczba;
    cout<<endl<<"srednia = "<<srednia<<endl;


    getchar();getchar();
    system("cls");
}

    return 0;

 

komentarz zamknięcia: Problem Rozwiązany

2 odpowiedzi

+1 głos
odpowiedź 3 maja 2017 przez Wildee Gaduła (3,380 p.)
Po prostu ponownie przypisz im wartość zero w momencie, w którym chcesz "zresetować" wartość. Przykładowo, srednia = 0;
komentarz 3 maja 2017 przez Mordi Nowicjusz (160 p.)
To naprawde bylo az tak proste?! heh dzieki bardzo pomoglo :)
komentarz 3 maja 2017 przez Wildee Gaduła (3,380 p.)
Też czasem dostaję olśnienia typu "to naprawdę było aż tak proste?" :D Powodzenia z dalszą nauką ;)
+1 głos
odpowiedź 3 maja 2017 przez mokrowski Mędrzec (155,460 p.)
Linijki 14 i 15 wstaw w miejsce linii 21.
komentarz 3 maja 2017 przez Mordi Nowicjusz (160 p.)
To chyba nic nie zmieni ponieważ wpisalem w linii 24 suma = 0; i od tej pory dziala dobrze, teraz jeszcze musze zrobic tak zeby sie nie wysypywal po wpisaniu literki . Ale zaraz do tego dojde :)
komentarz 3 maja 2017 przez mokrowski Mędrzec (155,460 p.)
Zmieni to że nie będziesz miał zmiennych globalnych co jest bardzo złą praktyką. Ew. zarzuty że jest ponowne tworzenie zmiennych dla typów POD można na Twoim etapie nauki odpuścić bo kompilator i tak to zoptymalizuje.

Poza tym to "minimalna akceptowalna zmiana" prowadząca do najwyższego przyrostu jakości kodu :-)
komentarz 3 maja 2017 przez Mordi Nowicjusz (160 p.)
Okej dzieki za rady :)

Podobne pytania

0 głosów
1 odpowiedź 272 wizyt
pytanie zadane 27 kwietnia 2018 w JavaScript przez Vinchit Obywatel (1,040 p.)
0 głosów
1 odpowiedź 359 wizyt
0 głosów
1 odpowiedź 167 wizyt

92,550 zapytań

141,392 odpowiedzi

319,520 komentarzy

61,935 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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...