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

Problem z zadniem maturalnym 2015 "Słowa Binarne"

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
0 głosów
1,372 wizyt
pytanie zadane 12 listopada 2015 w C i C++ przez HIrashi Nowicjusz (150 p.)

Witam, przygotowuje się do matury z informatyki i zaczynam robic arkusze maturalne z poprzednich lat. W zadaniu jest plik tekstowy z około tysiącem linii, gdzie w kazdej jest liczba binarna od 2 do 25 znaków. Za zadanie mam zbadać ile jest takich liczb, że liczba zer jest większa od liczby jedynek w lini (słowie). Oto mój kod:
 

#include <iostream>
#include <fstream>
#include <stdlib.h>

using namespace std;

int main()
{
 fstream plik;
 plik.open("slowa.txt", ios::in);

 if(!plik.good()) exit(0);

 string slowo;
 int licznik=0, licznikzer, licznikjedynek;

 while(getline(plik, slowo))
 {
     licznikzer=licznikjedynek=0;

     for(int i=0; i<=slowo.length(); i++)
     {
         if(slowo[i]=='0') licznikzer++;
         else if(slowo[i]=='1') licznikjedynek++;
     }
     if(licznikzer>licznikjedynek) licznik++;
 }
 cout<<licznik<<endl;

    return 0;
}

I działa, oblicza... ale zastanawia mnie dlaczego jak wyswietlę sobie jedynie kolejne linie z pliku txt, to wyswietlają się od konca pliku? Nie powinno czytac od góry do dołu?

 

1 odpowiedź

0 głosów
odpowiedź 12 listopada 2015 przez furas Maniak (53,800 p.)
wybrane 14 listopada 2015 przez HIrashi
 
Najlepsza

Pokaż kod w którym wyświetlasz linie bo może rzeczywiście tam wypisujesz od końca.

---

Przy okazji: w `i<=slowo.length()` powinno być < a nie <= bo inaczej sprawdzasz też znak poza słowem.

Jeśli słowo ma długość 5 to jego elementy mają numery 0,1,2,3,4 ale już nie 5.

komentarz 12 listopada 2015 przez HIrashi Nowicjusz (150 p.)
while(getline(plik, slowo))
 {
   cout<<slowo<<endl;
 }

 

Podobne pytania

+1 głos
1 odpowiedź 3,097 wizyt
pytanie zadane 8 stycznia 2016 w C i C++ przez polki321 Nowicjusz (130 p.)
0 głosów
4 odpowiedzi 693 wizyt
pytanie zadane 29 czerwca 2018 w PHP przez niezalogowany
+1 głos
1 odpowiedź 823 wizyt

93,433 zapytań

142,429 odpowiedzi

322,661 komentarzy

62,796 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

...