Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[Lekcja 17 ] Zadanie domowe

Ostatnio zmodyfikowano 2016-05-23 09:45
Autor Wiadomość
Rashmistrz
» 2014-10-24 16:32:55
Właśnie Wy krzywdzicie [...]
Ja tylko mówię w czym błąd i ewentualnie
odsyłam do konkretnych części artykułów. ;_;

Staram się przewidzieć sytuację i
co najlepiej podać. np.
pw1602: Zamiast korzystać z pętli for użyj do...while.
@pw1602
To niczego nie zmieni.
To niczego na razie nie zmieni.
A potem ktoś znowu potarza o tej
pętli i autor tematu odpowiada:
zastosowanie do while mi nie pomoże,
pętla bedzie wykonaywala sie bez końca.
P-119306
matys210
» 2014-10-24 16:38:46
A więc bd naprowadzał, lecz nie podawał gotowców.
P-119307
Rashmistrz
» 2014-10-24 17:34:55
A więc bd naprowadzał, lecz nie podawał gotowców.
Przy nauce z kursu tak właśnie ma być.
P-119308
1aam2am1
» 2014-10-24 18:12:15
To jest offtop. Zamknijcie temat. Problem został rozwiązany.
P-119311
Ananke
» 2016-05-23 08:43:57
Witam wszystkich. Jestem osobą początkującą dlatego proszę o wyrozumiałość. Zależy mi na tym,żeby wszystko dobrze zrozumieć i potrzebuję pewnych wyjaśnień. Chodzi mi o pierwszą cześć zadania domowego.Ja zaczęłam programować to tak:

#include <iostream>

using namespace std;
int wczytajLiczbe()
{
    int a;
    cin>>a;
    return a;

}

int main()
{
    do
{
    cout<<"Podaj liczbe:";
    int liczba=wczytajLiczbe();
    cout <<"Podales liczbe"<<liczba<< endl;
}while (wczytajLiczbe==wczytajLiczbe);
    return 0;
}


Głównie chodzi mi o wyjaśnienie tego, czy mogę w taki sposób zaprogramować podanie liczby a. Jeśli tak to za każdym razem przecież wynik będzie poprawny a nie bardzo wiem jak zrobić to inaczej. Niby wszystko się zgadza.Pętla działa, program prosi o wczytanie liczby, wczytuje ją i prosi o to ponownie ale nie rozumiem do końca treści zadania:"Napisz funkcję, która będzie wczytywała liczby ze standardowego strumienia wejścia i zwracała wczytywaną wartość".czy to nie jest oczywiste?Skoro wczytuje jakąś liczbę i proszę program by ją podał to jak ma podać inną? Czy aby "zagwarantować, że zwracana liczba zawsze jest poprawna" powinnam dodatkowo użyć funkcji if? Natomiast ponownie mam pytanie, w jaki sposób program mógłby podać inną nazwę? Rozumiem,że wyglądało by to inaczej przy losowaniu liczby ale tutaj przecież sama ją podaję.Przepraszam za długi wywód i zarazem będę wdzięczna za pomoc.
P-148506
carlosmay
» 2016-05-23 09:08:59
while( wczytajLiczbe == wczytajLiczbe );
W ten sposób nie. Jest to pętla nieskończona.
A tak na marginesie, w tej logice używany jest adres funkcji wczytaLliczbę().
Pętla nieskończona.

PS: załóż nowy temat. Ten to offtop.
P-148507
mateczek
» 2016-05-23 09:29:18

Właśnie Wy krzywdzicie, można naprowadzić na rozwiązanie, ale na Boga, nie podawać... Co potem będzie z tego wiedział jeśli się nie spyta? Działa? Działa, jedziemy dalej.
nie przesadzaj. Programowania najlepiej nauczyć się na przykładach !!! Zresztą nie tylko programowania. Samemu to najprędzej można nałapać złych nawyków. Tak samo ucząc się programowania jak i gry na skrzypcach, czy szybkiego pisania na klawiaturze!!!


C/C++
#include <iostream>
#include<limits>

using namespace std;
int wczytajLiczbe() {
    int liczba;
    while( !( cin >> liczba ) ) { //dopóki wczytywanie się nie powiedzie  powtarzaj
        cout << "to nie liczba wczytaj jeszcze raz!!!";
        cin.clear();
        cin.ignore( std::numeric_limits < std::streamsize >::max(), '\n' );
    }
    return liczba;
}



int main()
{
    int liczba = wczytajLiczbe();
    cout << liczba << endl;
}


//tak na marginesie funkcja z for zamiast  while wygląda prawie tak samo
int wczytajLiczbe2() {
    int liczba;
    for(; !( cin >> liczba ); ) { //dopóki wczytywanie się nie powiedzie  powtarzaj
        cout << "to nie liczba wczytaj jeszcze raz!!!";
        cin.clear();
        cin.ignore( std::numeric_limits < std::streamsize >::max(), '\n' );
    }
    return liczba;
}
P-148508
carlosmay
» 2016-05-23 09:45:56
@mateczek
2014-10-24

Rozwiązanie z
for
 trochę naciągane ;)

@Ananke - przejrzyj linki z tego tematu. Jest tam sporo przydatnych informacji.
P-148510
1 2 « 3 »
Poprzednia strona Strona 3 z 3