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

Подсчет последовательностей нечетных чисел. Ошибка - C++

Восстановить пароль Регистрация
 
JerryJackson
50 / 6 / 1
Регистрация: 15.07.2010
Сообщений: 112
04.11.2010, 19:18     Подсчет последовательностей нечетных чисел. Ошибка #1
Народ подскажите
Написал программу для подсчета слов у которых в конце стоит не буква и подсчет последовательностей нечетных чисел
Ошибок нет но когда запускаю программу на экран ничего не выводит
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include "stdafx.h"
#include <iostream>
#include <cctype>
 
using namespace std;
 
int xcount(char*);
int xcount(int*);
 
int main()
{
    char str1[]="Привет! nil laba_12 chaos? UFO";
    int str2[]={12,7,5,54,67,3,3,4,1,0};
 
    cout << xcount(str2) << endl;
    cout <<  xcount(str1) << endl;
 
 
    return 0;
}
int xcount(char* a)
{
    int i=0;
    int counter=0;
    int n=0;
    while(a[i]!='\0')
    {
        i++;
        
if((a[i]==' ') && isalpha(a[i-1])==0)  //&&(a[i-1]==isalpha(a[i]))
counter++;
}
 
    return counter;
}
int xcount(int* b)
{
 int i=0;
 int counter1=0;
 int n1=0;
 while(b[i]!='\0')
 {
         i++;
     if(b[i]%2!=0)
         counter1++;
     if(counter1>0)
         counter1=0;
         n1++;//количество последовательностей из нечетных чисел
 }
 return n1;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
04.11.2010, 19:27     Подсчет последовательностей нечетных чисел. Ошибка #2
JerryJackson, Все выводит.
http://www.cyberforum.ru/cpp-beginners/thread10807.html

Добавлено через 2 минуты
Гм... Что это?
C++
1
while(b[i]!='\0')
И почему это в подсчете чисел?
Хотя я так понял 0 - завершение последовательности? Тогда
C++
1
while(b[i]!=0)
Добавлено через 1 минуту
+
Так должно быть так. Иначе считается любое число.
C++
1
2
3
4
5
         if(counter1>0)
         {
                 counter1=0;
                 n1++;//количество последовательностей из нечетных чисел
         }
JerryJackson
50 / 6 / 1
Регистрация: 15.07.2010
Сообщений: 112
04.11.2010, 19:29  [ТС]     Подсчет последовательностей нечетных чисел. Ошибка #3
консоль открываеться но результат не выводит
Миниатюры
Подсчет последовательностей нечетных чисел. Ошибка  
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
04.11.2010, 19:30     Подсчет последовательностей нечетных чисел. Ошибка #4
JerryJackson, Исправили то, что я писал?
JerryJackson
50 / 6 / 1
Регистрация: 15.07.2010
Сообщений: 112
04.11.2010, 19:35  [ТС]     Подсчет последовательностей нечетных чисел. Ошибка #5
та исправил но всеравно результат не выводит

Добавлено через 2 минуты
C++
1
while(b[i]!='\0')
\\если массив не равен концу строки
наверное проблема с переменной
C++
1
int i=0
потому что в цикле она не возрастает а постоянно равна 0 ее надо как-то увеличить
ISergey
Maniac
Эксперт С++
 Аватар для ISergey
1330 / 863 / 50
Регистрация: 02.01.2009
Сообщений: 2,622
Записей в блоге: 1
04.11.2010, 19:36     Подсчет последовательностей нечетных чисел. Ошибка #6
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
30
31
32
33
34
35
36
37
38
39
40
#include <iostream>
using namespace std;
 
int xcount(const char*);
int xcount(const int*);
 
int main()
{
    char str1[]="Привет! nil laba_12 chaos? UFO";
    int str2[]={12,7,5,54,67,3,3,4,1,0};
 
    cout << xcount(str2) << endl;
    cout << xcount(str1) << endl;
 
    system("pause");
    return 0;
}
 
int xcount(const char* a)
{
    int counter=0;
    while(*a) {
        if((*a==' ') && (isalpha(*(a-1))==0)) 
            counter++;
        ++a;    //!
    }
 
    return counter;
}
int xcount(const int* b)
{
    int counter1=0;
    while(*b) 
    {
        if(*b & 1)
            counter1++;
        ++b;
    }
    return counter1;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.11.2010, 19:38     Подсчет последовательностей нечетных чисел. Ошибка
Еще ссылки по теме:

Подсчет нечетных элементов C++
Из множества целых чисел получить множество чисел, являющихся квадратами нечетных чисел C++
C++ Вывести начальные индексы всех непрерывных знакочередующихся последовательностей чисел

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

Или воспользуйтесь поиском по форуму:
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
04.11.2010, 19:38     Подсчет последовательностей нечетных чисел. Ошибка #7
Интересно... Почему у меня работает как нужно и выводит 6, 3 как и должно быть?...
Yandex
Объявления
04.11.2010, 19:38     Подсчет последовательностей нечетных чисел. Ошибка
Ответ Создать тему
Опции темы

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