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

Zakończenie programu po dwukrotnym podaniu 0

Object Storage Arubacloud
0 głosów
97 wizyt
pytanie zadane 27 stycznia 2018 w C i C++ przez sid2602 Użytkownik (510 p.)

Witam.

Rozwiązując zadanie ze Spoja sumy wielokrotne natchnąłem się na pewien problem a mianowicie nie wiem jak zakończyć pętlę while gdy wpiszemy dwa razy pod rząd 0. Poproszę o naprowadzenie mnie na rozwiązanie tego zadania.

Link do zadanka http://pl.spoj.com/problems/KC008/

kod:

#include <iostream>

using namespace std;

int main()
{
    long long  a,wynik=0,wynik_koncowy=0,b;
    while(cin>>a)
    {
        wynik+=a;
        if(a==0)
        {
            cout<<wynik<<endl;
            wynik_koncowy+=wynik;
            wynik=0;
        }
    }
cout<<wynik_koncowy;

    return 0;
}

 

2 odpowiedzi

0 głosów
odpowiedź 27 stycznia 2018 przez monika90 Pasjonat (22,940 p.)
wybrane 15 lutego 2018 przez sid2602
 
Najlepsza

Zliczaj zera które występują po rząd i przerwij pętlę gdy zliczysz do dwóch. Np.

    int zera = 0;
    int a = 0;
    while (zera < 2 && std::cin >> a)
    {
        if (a == 0)
            ++zera;
        else
            zera = 0;
    }

Z treści zadania nie wynika jednak, że na końcu muszą być dwa zera, więc takie rozwiązanie raczej pogorszy sprawę.

0 głosów
odpowiedź 27 stycznia 2018 przez Mikrokontroler xD Stary wyjadacz (13,500 p.)
Bo while jest zawsze true daj ten cin>a w pętli a do while warunek który chcesz spełnić

A jak nie chcesz to chyba instrukcja break wychodzi Ci z pętli więc dodaj sobie break; na koniec if-a

Podobne pytania

0 głosów
2 odpowiedzi 162 wizyt
0 głosów
3 odpowiedzi 1,448 wizyt
pytanie zadane 4 sierpnia 2017 w C i C++ przez Artur Hajmowicz Początkujący (340 p.)
0 głosów
2 odpowiedzi 61 wizyt
pytanie zadane 29 października 2020 w C i C++ przez Wolv63 Użytkownik (630 p.)

92,575 zapytań

141,424 odpowiedzi

319,649 komentarzy

61,960 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!

...