Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Контроль ввода - только цифры, задача на определение счастливого билета 
V
    Опции темы
KorroK
Дата 24.12.2008, 02:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 21.12.2008

Репутация: нет
Всего: нет



стоит клaссическая задaча, определить является ли билет счaстливым"(рaвны ли суммы трех первых и трех последних цифр)
число шестизнaчное.

Нужна прoверка вводa  (бoльшего или меньшего кjличества симвoлов, на ввoд симвoлов отличных oт цифр.) билет  6 значный минимальнoе значение 001001 (сeрия и нoмер не нулевые)

Начал так, фильтрую цифры

char c;
do 
    {
    c = _getch();
           
    if(isdigit(с)) 

                {
                 std::cout << c;
            }
        } 
        while(c != 13);

Идея в том, чтобы ввести счетчик введенных символов, и если введено <6  - выдать сообщение об ошибке
(если более запретить ввод) а потом
просуммировать первые 3 элемента массива и последние три.
Если не равны нулю и при этом равны, то выбить сообщение, что такой то номер счастливый

Застрял с реализацией кода.




Это сообщение отредактировал(а) KorroK - 24.12.2008, 23:05
PM MAIL   Вверх
likehood
Дата 24.12.2008, 10:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


666
**


Профиль
Группа: Участник
Сообщений: 536
Регистрация: 21.12.2005

Репутация: нет
Всего: 24



Код

#include "conio.h"
#include "ctype.h"

int main()
{
    int buf[6];

    for (int i=0; i<6; i++)
    {
        char c;
        do {
            c = _getch();
        }
        while (! isdigit(c));
        _putch(c);
        buf[i] = c-'0';
    }
    printf("\n");
    int s1 = buf[0]+buf[1]+buf[2];
    int s2 = buf[3]+buf[4]+buf[5];
    if (s1==0 || s2==0)
        printf("Wrong number\n");
    else
    {
        if (s1==s2)
            printf("The ticket is happy!\n");
        else
            printf("The ticket isn't happy :(\n");
    }

    return 0;
}

PM MAIL   Вверх
KorroK
Дата 24.12.2008, 23:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 21.12.2008

Репутация: нет
Всего: нет



Спасибо (понимаю, что не булькает )))), попробую
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.2681 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.