Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.10.2008, 19:52   #11
Ламер_001
Ну и что? :)
Форумчанин
 
Регистрация: 20.10.2008
Сообщений: 129
По умолчанию

проверь когда нашел пробел, не является ли предыдущий символ пробелом. если является то пропускаешь и обнуляешь k, иначе проверка.
Учиться, учиться и еще раз учиться
Ламер_001 вне форума Ответить с цитированием
Старый 26.10.2008, 20:04   #12
Жека:)
Пользователь
 
Регистрация: 25.10.2008
Сообщений: 30
По умолчанию

Эм, а можно код?
Жека:) вне форума Ответить с цитированием
Старый 26.10.2008, 20:31   #13
Ламер_001
Ну и что? :)
Форумчанин
 
Регистрация: 20.10.2008
Сообщений: 129
По умолчанию

ну что то вроде
Код:
if (s[i] == ' ')
{
 if (s[i-1] == ' ')
 {
  k = 0;
 } 
 else
 {
// проверям на максимум или минимум
 }
}
Учиться, учиться и еще раз учиться
Ламер_001 вне форума Ответить с цитированием
Старый 26.10.2008, 20:47   #14
Жека:)
Пользователь
 
Регистрация: 25.10.2008
Сообщений: 30
По умолчанию

Ламер_001, заработало, благодарю
Жека:) вне форума Ответить с цитированием
Старый 29.10.2008, 09:21   #15
Жека:)
Пользователь
 
Регистрация: 25.10.2008
Сообщений: 30
По умолчанию

Ребят, задача - в строке опробелить все слова чётной длины. Мой код, но он не работает:
Код:
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <string.h>
void main()
{
char s[100];
int i, k, p, p2;
k=0;
cout<<"Vvedite stroku: ";
gets(s);
for (i=0; i<strlen(s); i++)
{
if (s[i]!=' ')
{
k++;
p2=i;
p=i-k;
}
if (s[i]==' ')
{
if (k%2==0)
for (i=p; i<p2; i++)
s[i]=' ';
k=0;
}
}
puts(s);
getch();
}
Помогите пожалуйста найти ошибку!
Жека:) вне форума Ответить с цитированием
Старый 29.10.2008, 11:32   #16
Ламер_001
Ну и что? :)
Форумчанин
 
Регистрация: 20.10.2008
Сообщений: 129
По умолчанию

че то не совсем понял зачем переменные p и p2
одним проходом все надо делать
Код:
k = 0; // количество букв в текущем слове 
n = 0; // общее количество слов с четным количеством букв
for (i=0; i<strlen(s); i++)
 if (s[i]!=' ')
 {
  k++;
 }
 else
 {
  if (s[i-1] == ' ') k = 0;
  else
  {
    if ( !(k % 2) ) n++;
  } 
 }
printf("\nВ данной строке содержится %d слов с четным количеством букв", n);
Учиться, учиться и еще раз учиться
Ламер_001 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите найти ошибку в коде плиз Айат Помощь студентам 2 01.10.2008 17:43
Памагите найти ошибку в коде...С++ Goblin Помощь студентам 1 13.05.2008 18:15
Помогите исправить ошибку в коде... prizrak1390 Общие вопросы Delphi 4 26.04.2008 13:19
помогите найти ошибку в коде Joker88 Помощь студентам 1 04.03.2008 12:43