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

Проверить и исправить код. тема: строки - C++

Восстановить пароль Регистрация
 
dem4ik
0 / 0 / 0
Регистрация: 02.12.2012
Сообщений: 3
07.12.2012, 18:13     Проверить и исправить код. тема: строки #1
Задача такая: дана строка символов, состоящая из произвольных десятичных ЦИФР, разделенных пробелами. Вывести четные ЧИСЛА этой строки.
1)Проверьте код;
2)Каким образом здесь можно использовать strtok? Помогите!);
Вот код:

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
#include <iostream.h>
#include <string.h>
#include <stdio.h>
 
int main()
{
    char str[80];
    
    int i, ch, n;
    puts("Vvedite stroku desyatichnih cifr cherez probel: "); 
    gets(str);
    cout<<"Chetnie chisla etoi stroki: "<<endl;
    n=strlen(str);
    for(i=0; i<n; i++)
        {
         int atoi(str[i]);
         ch=str[i];
         if(str[i]!=' ')
            { 
             if(!(ch%2)) 
             cout<<str[i]<<' ';
            }
        }
    cout<<endl;
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.12.2012, 18:13     Проверить и исправить код. тема: строки
Посмотрите здесь:

проверить программу и исправить ошибки C++
C++ Ввод строки типа {a,b,c,d,f,{a,b,c,f},g,h,j}, исправить код
Удалить элементы из строки (исправить код) C++
C++ Необходимо исправить программу! Тема массивы
строки в с++ проверить является четным числом длина введенной пользователем строки и вывести сообщение на экран C++
Нужна помщь тема строки C++
C++ Самый хитрый код (Несерьезная тема)
C++ Доделать код. Тема массивы. Нужно использовать массив для хранения ответа

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
лилиэн
6 / 6 / 0
Регистрация: 22.11.2012
Сообщений: 95
07.12.2012, 18:24     Проверить и исправить код. тема: строки #2
можно сделать полегче... все символы имеют свое "значение" которые записаны в таблицах ASCII
там....
0-30
1-31
2-32
3-33
4-34
5-35
6-36(т.е четное число соответствует четной цифре)
ну и так далее до 9)
вот часть кода
C++
1
2
3
4
5
int iChar;
 
for (i=0;i<n;i++)\\n соответственно длина строки
    iChar=str[i]; \\ в iChar запишется номер этого символа
    if (iChar%2!=0) \\проверим номер на четность (и выведите его )
надеюсь поможет
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4927 / 2670 / 243
Регистрация: 29.11.2010
Сообщений: 7,429
07.12.2012, 18:25     Проверить и исправить код. тема: строки #3
Цитата Сообщение от dem4ik Посмотреть сообщение
2)Каким образом здесь можно использовать strtok? Помогите!);
C
1
2
3
4
5
6
7
8
9
10
11
char str[80];
puts("Vvedite stroku desyatichnih cifr cherez probel: ");
gets(str);
char * pch = strtok (str," ");
char s[20];
while (pch != NULL)
{
    strcpy(s, pch);
    if (число) printf ("%s\n",s);
    pch = strtok (NULL, " ");
}
Yandex
Объявления
07.12.2012, 18:25     Проверить и исправить код. тема: строки
Ответ Создать тему
Опции темы

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