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

Jak zabronić wpisywania liter w programie

Ostatnio zmodyfikowano 2014-02-02 14:35
Autor Wiadomość
damianlxlx5
Temat założony przez niniejszego użytkownika
» 2014-01-15 14:28:24
A jak by trzeba było zapisać to pętle bo szczerze mówiąc nie mam pojęcia.Jak warunek tej pętli zapisać głównie mi chodzi że ona będzie sprawdzała czy podana wartość przez użytkownika jest liczą a nie literą ?

P-102227
damianlxlx5
Temat założony przez niniejszego użytkownika
» 2014-01-16 20:54:54
Bardzo proszę o pomoc.
Odswieżam
P-102330
damianlxlx5
Temat założony przez niniejszego użytkownika
» 2014-01-18 09:41:34
Odświeżam
P-102411
leon_w
» 2014-01-18 09:46:46
Każde wprowadzanie danych sprawdzaj osobną pętlą.

C/C++
int a, b;

do {
   
    cin.clear();
    cin.sync();
    cout << "Podaj liczbę";
    cin >> a;
} while( !cin.good() );

do {
   
    cin.clear();
    cin.sync();
    cout << "Podaj następną liczbę";
    cin >> b;
} while( !cin.good() );


Coś koło tego.
P-102412
sharlo
» 2014-01-18 20:10:56
Ja osobiście wykorzystuje do tego poniższą pętle.

C/C++
#include<iostream>
#include<cstring>
using namespace std;

int main()
{
   
    int ile;
    cout << "Podaj liczbe a: ";
    cin >> ile;
   
    //Petla ktora upewnia sie ze wpisana liczba to liczba calkowita. :)
    while( cin.fail() )
    {
        cin.clear();
        cin.ignore( 50, '\n' );
        cout << "Liczba musi byc liczba calkowita: ";
        cin >> ile;
    }
}
P-102487
damianlxlx5
Temat założony przez niniejszego użytkownika
» 2014-01-25 13:25:06
Skorzystałem z twojego przykładu sharlo lecz teraz program nie chce się przekompilować nie wiem dlaczego.Mój kod wygląda teraz tak:

C/C++
#include <iostream>
#include <windows.h>
using namespace std;
main()

{ bool good, bad;
    float liczba, cyfra;
    float suma;
   
   
    { M: cout << "Wprowadz liczbe calkowita" << endl;
        cin >> liczba;
        while( cin.fail() )
        {
            cin.clear();
            cin.ignore( 50, '\n' );
            cout << "Liczba musi byc liczba calkowita: ";
            cin >> liczba;
        }
    }
    cout << "Wprowadz druga liczbe calkowita" << endl;
    cin >> cyfra;
    while( cin.fail() )
    {
        cin.clear();
        cin.ignore( 50, '\n' );
        cout << "Liczba musi byc liczba calkowita: ";
        cin >> liczba;
    }
   
    suma = liczba * cyfra;
    good = cin.good();
    bad = cin.bad();
    cin.clear();
    cin.sync();
}


if( suma < 100 )

{
   
    cout << "Suma dwoch liczb ktore podales nie przekracza 100" << endl;
    cout << "Wynik mnozenia tych dwoch liczb wynosi : " << suma << endl;
    cout << "Znakomicie" << endl;
    Sleep( 2000 );
    goto M;
   
   
}
else
{
    cout << "Suma liczb przekracza 100" << endl;
    cout << "Wynik nie zostanie zwrocony" << endl;
    cout << "Sprobuj ponownie" << endl;
    Sleep( 2000 );
    goto M;
}


}

Wyskakuje błąd wskazujący na instrukcję if (suma < 100).Jego treść jest taka: D:\Calculatorek\main.cpp|39|error: expected unqualified-id before 'if'|
 Dodam że używam programu Code::Blocks.
P-103151
damianlxlx5
Temat założony przez niniejszego użytkownika
» 2014-01-25 14:46:18
Odświeżam
P-103166
SeaMonster131
» 2014-01-25 16:27:47
Przecież wyraźnie widać, że masz 1 klamrę za dużo.
Po drugie nie odświeżaj tematu po 3 godzinach.
Po trzecie koniecznie przeczytaj » KursyKurs STC kurs
P-103170
1 « 2 » 3 4 5 6
Poprzednia strona Strona 2 z 6 Następna strona