Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
andryshka
2 / 2 / 0
Регистрация: 05.12.2013
Сообщений: 81
#1

Оператор ИЛИ - C++

09.01.2014, 18:00. Просмотров 218. Ответов 5
Метки нет (Все метки)

Программа должна проверять строку на правильность ввода(строка состоит из последовательностей нолей и единиц разделённых пробелами)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <iostream>
#include <iomanip>
#include  <string.h>
using namespace std;
int main()
{   
    int cancel_program;
    do 
    {
    char mas[20];
    cin.getline(mas,20);
        int n=strlen(mas);
            for(int i=0;i<n;i++)
                {
                if(mas[i]!='1'||mas[i]!='0'||mas[i]!=' ')
                i=n;
                cout<<"!!!";
                }
        cout<<  n << endl;
    cin >> cancel_program ;
    cin.get();
    }
    while(cancel_program!=0);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.01.2014, 18:00     Оператор ИЛИ
Посмотрите здесь:

C++ Что значит оператор ^ (кроме поразрядного исключающего или)?
ошибки "Complex" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору C++
new - это операция или все таки оператор? C++
Оператор выбора: определить, буквой, цифрой или спецсимволом является введенный символ C++
C++ оператор pow, или почему он не работает?!
Оператор if или где скрыта ошибка C++
C++ Логический оператор ИЛИ
Используя условный оператор if или switch, выполните проверку на принадлежность значения переменной диапазону [10; 20) C++
C++ Ошибка: не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору
C++ А можно в функцию, или перегруженный оператор передать ссылку на копию?
Можно ли задать оператор сравнения (< или >) для string C++
Каким образом работает побитовое или и для чего этот оператор используется в заданном фрагменте кода? C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MicM
 Аватар для MicM
820 / 487 / 90
Регистрация: 29.12.2009
Сообщений: 1,097
Завершенные тесты: 1
09.01.2014, 18:04     Оператор ИЛИ #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
bool flag = true;
for (int i=0; i<strlen(mas); i++)
{
    if (mas[i]=='1' || mas[i]=='0' || mas[i]==' ')
        continue;
    else
    {
         flag = false;
         break;
    }
}
cout <<flag <<'\n';
andryshka
2 / 2 / 0
Регистрация: 05.12.2013
Сообщений: 81
09.01.2014, 18:07  [ТС]     Оператор ИЛИ #3
Цитата Сообщение от MicM Посмотреть сообщение
C++
1
bool flag = true; for (int i=0; i<strlen(str); i++) { if (mas[i]=='1' || mas[i]=='0' || mas[i]==' ') continue; else { flag = false; break; } } cout <<flag <<'\n';
А можно без логических переменных обойтись?
MicM
 Аватар для MicM
820 / 487 / 90
Регистрация: 29.12.2009
Сообщений: 1,097
Завершенные тесты: 1
09.01.2014, 18:09     Оператор ИЛИ #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int k = 1;
for (int i=0; i<strlen(mas); i++)
{
    if (mas[i]=='1' || mas[i]=='0' || mas[i]==' ')
        continue;
    else
    {
         k = 0;
         break;
    }
}
if (!k)
    cout <<"Error!\n";
else cout <<"Good!\n";
ilja123
43 / 43 / 6
Регистрация: 24.12.2009
Сообщений: 382
09.01.2014, 18:15     Оператор ИЛИ #5
Цитата Сообщение от andryshka Посмотреть сообщение
А можно без логических переменных обойтись?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#define YES 1
#define NO 0
 
int flag = YES;
for (int i=0; i<strlen(mas); i++)
{
    if (mas[i]=='1' || mas[i]=='0' || mas[i]==' ')
        continue;
    else
    {
         flag = NO;
         break;
    }
}
cout <<flag <<'\n';
andryshka
2 / 2 / 0
Регистрация: 05.12.2013
Сообщений: 81
09.01.2014, 18:18  [ТС]     Оператор ИЛИ #6
Имею наглость вас немного поправить:
C++
1
2
3
4
5
6
7
8
9
10
for(int i=0;i<strlen(mas);i++)
                {
                if(mas[i]=='1'||mas[i]=='0'||mas[i]==' ')
                    continue;
                        else
                        {
                            cout<<"abra"<<endl;
                            break;
                        }
                }
Yandex
Объявления
09.01.2014, 18:18     Оператор ИЛИ
Ответ Создать тему
Опции темы

Текущее время: 14:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru