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

2 programy do tego samego

Object Storage Arubacloud
0 głosów
126 wizyt
pytanie zadane 19 lutego 2017 w C i C++ przez michalj Nowicjusz (160 p.)
edycja 19 lutego 2017 przez michalj
#include <iostream>
#include <fstream>
#include <cstdlib>

using namespace std;

int main()
{
    string linia;
    fstream plik;
    plik.open("liczby.txt", ios::in);
    if(plik.good()==false)
    {
        cout<<"Nie mozna otworzyc pliku";
    }

    while(getline(plik,linia))
    {
        cout<<linia<<endl;

      I  if(linia.length())
        {
            pobierz ostatnia i ja sprawdz
        }

      II   string na int
           %2 zapisac w floacie i w incie
           odjac od siebie

    }





    return 0;
}

 

1
komentarz 19 lutego 2017 przez L33TT12 Gaduła (3,950 p.)
To jest jakieś pytanie czy co xD?
komentarz 19 lutego 2017 przez michalj Nowicjusz (160 p.)
przeniesione 19 lutego 2017 przez Arkadiusz Waluk
Coś się zbagowało. Miało być tak:

Witam mam problem odnośnie zadania. Mam zrobić 2 programy działające tak samo. Pierwsza metoda odczytująca z pliku dane i sprawdzająca, czy liczba jest podzielna przez dwa, chodzi mi o to, gdzie będzie pętla i coś takiego jak linia.length, (ale zupełnie nie wiem jak to zrobić) pobierz ostatnią i ją sprawdz, liczby te są w systemie binarnym. Drugą metodą to zrobić stringa na inta, i wtedy podzielić przez dwa, wynik zapisać w incie i floacie, odjąć od siebie i jak wyjdzie 0 to liczba jest parzysta. No,chyba że macie jakieś inne pomysły.
komentarz 19 lutego 2017 przez mitelak Pasjonat (23,330 p.)
Jeżeli masz w kolejnych wierszach kolejne liczby binarne to pierwsze sprawdzisz po prostu if(linia[linia.size()-1] == '0') wtedy jest parzysta liczba binarna. Numer dwa to po prostu konwersja z dwójkowego na dziesiętny i sprawdzanie parzystości przez modulo if(dziesietna%2 == 0). Konwersje możesz zrobić przechodząc przez liczbę binarną (linia) w pętli for od tyłu i mnożąc kolejne cyfry razy kolejne potęgi (1, 2, 4, 8 itd) i dodające wyniki do siebie. Tutaj trzeba pamiętać, że z komórki stringa (char) otrzymasz cyfre (int) dopiero po odjęciu od tego chara znaku 0 czyli char - '0' zwróci prawidłową wartość.
komentarz 19 lutego 2017 przez michalj Nowicjusz (160 p.)
Mógłbyś trochę jaśniej z tym drugim, ja dopiero zaczynam i zbytnio się nie orientuję.

A nie można by tych liczb zrobić ze stringa na atoi i wtedy z tym if(linia%2==0)....
komentarz 20 lutego 2017 przez mitelak Pasjonat (23,330 p.)
Jeżeli dobrze zrozumiałem co chcesz zrobić to nie, bo atoi konwertuje stringa na inta czyli jeżeli masz liczbe binarną 11001 to dostaniesz w dziesiętnym 11001, a nie 25. Tutaj musisz zrobić konwersję między systemami liczbowymi (tutaj 2 na 10). W internecie jest trochę tego typu kodów napisanych, ale warto zaznajomić się jak takie konwertowanie wygląda nawet na kartce.

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
2 odpowiedzi 1,913 wizyt
0 głosów
1 odpowiedź 109 wizyt
0 głosów
0 odpowiedzi 172 wizyt

92,568 zapytań

141,422 odpowiedzi

319,641 komentarzy

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

...