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

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

Войти
Регистрация
Восстановить пароль
 
Aspire Mcafee
0 / 0 / 0
Регистрация: 10.10.2010
Сообщений: 11
#1

Не получается исправить код - C++

11.10.2010, 21:17. Просмотров 473. Ответов 2
Метки нет (Все метки)

помогите исправить код пожалуйста
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
25
char limit[20], notation[2];
 
   do
   {
        error = 0;
        int i = 0;
        cout << "Enter number: ";
        cin >> limit;
        do
        {
                if ((limit[i] < '0') || (limit[i] > '9'))
                {
                        error = 1;
                        cout << "Error! Repeat!" << endl;
                        break;
                }
 
                i++;
        }
        while (i != 20);
 
        if (error == 0)
                break;
   }
   while (error != 0);
как сделать чтобы массив проверялся до последнего введонного элемента а не полностью.
например я ввожу 1234, но проверка идет до конца массива, что мне нужно изменить в строке while (i != 20);?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.10.2010, 21:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не получается исправить код (C++):

Не получается со строками (исправить код) - C++
Добрый вечер! У меня возникла такая проблема: есть задача, я ее разбил на подпрограммы, подпрограммы написал, а вот теперь составить одну...

Не получается запустить длинный код Алгоритма Гомори, код правильный. - C++
Собственно как запустить код через С++Builder 6 #include&lt;ctype.h&gt; #include&lt;string.h&gt; #include&lt;conio.h&gt; #include&lt;stdio.h&gt; ...

не получается исправить ошибку - C++
Здравствуйте Сочту за великое дело помочь человеку, который не умеет работать со стеками. Описать класс, реализующий стек. Написать...

Не получается исправить ошибки в коде - C++
Помогите найти ошибки #include &lt;iostream&gt; #include &lt;cstdlib&gt; using namespace std; class Schet{ public: int balance; ...

Пытаюсь переписать код с циклом for, в код с циклом while, но не совсем получается - C++
Возникло пару вопросов: #include &lt;iostream&gt; using namespace std; int main () { for (int i = 0; i&lt;=10; i++) cout &lt;&lt;...

Не получается написать код - C++
Хотел потренироваться по C++ и решил создать программу которая создает анкету. Вроде бы код написал: #include &lt;iostream&gt; #include...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MILAN
885 / 779 / 86
Регистрация: 21.02.2009
Сообщений: 1,722
11.10.2010, 21:40 #2
Ето можна сделать через динамические массивы!!!

Добавлено через 2 минуты
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
25
26
27
28
29
char *limit; 
char notation[2];
int size;
 
   do
   {
        error = 0;
        int i = 0;
        cout << "Enter number: ";
        cin >> limit;
        limit = new char[size];
        do
        {
                if ((limit[i] < '0') || (limit[i] > '9'))
                {
                        error = 1;
                        cout << "Error! Repeat!" << endl;
                        break;
                }
 
                i++;
        }
        while (i !=size);
 
        if (error == 0)
                break;
   }
   while (error != 0);
delete [] limit;
Nameless One
Эксперт С++
5771 / 3420 / 255
Регистрация: 08.02.2010
Сообщений: 7,447
12.10.2010, 03:14 #3
MILAN, ну нельзя же так делать...
Можно так:
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
25
26
27
28
#include <stdio.h>
#include <ctype.h>
 
#define max 20
 
int isNum(const char* str)
{
    while(*str)
        if(!isdigit(*str++))
            return 0;
    return 1;
}
 
int main(void)
{
    char number[max];
    do
    {
        printf("Enter a number: ");
        scanf("%s", number);
        if(isNum(number))
            break;
        fprintf(stderr, "Error! Repeat\n");
    }
    while(1);
    printf("The number is %s\n", number);
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.10.2010, 03:14
Привет! Вот еще темы с ответами:

Исправить код - C++
Форумчане,знатоки плюсов,очень прошу помочь испраивть код.Сам только начинаю разбираться,поэтому нужна помошь. Часть ошибок...

Исправить код - C++
Исправлял код и не могу исправить выделенное(в коде). Помогите чем-нибудь заменить данные строки(сделать более просто без iFile). В самом...

Исправить код - C++
Компилятор выдает ошибку #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; int _tmain(int...

Исправить код - C++
#include &lt;iostream&gt; using namespace std; int main () { setlocale(0, &quot;&quot;); double x, i = 0; // инициализируем счетчик...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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