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

ошибка в программе - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Исправить код программы http://www.cyberforum.ru/cpp-beginners/thread1028343.html
Привет, помогите, пожалуйста. Есть код программы, что нужно включить/добавить, чтобы она работала полноценно... Исправьте код: char str1,str2; cin.getline(str1,255); int k=0; bool inside=false;// признак нахождения внутри скобок bool present=false; // Признак присутствия скобок for(int i=0;i<strlen(str1);i++) { if(inside)
C++ Функции библиотеки для работы со строками и символами С помощью текстового редактора создать файл, содержащий текст, длина которого не превышает 1000 символов (длина строки текста не должна превышать 70 символов). Имя файла должно иметь расширение DAT. Написать программу, которая: • выводит текст на экран дисплея; • по нажатию произвольной клавиши поочередно выделяет каждое из слов текста, у которых первый и последний символы совпадают; •... http://www.cyberforum.ru/cpp-beginners/thread1028324.html
C++ strcat
#include <windows.h> #include <iostream> #pragma warning (disable : 4996) void Func (char* lpszFileName); void main() { char *lpszFileName = "D:\\";
C++ Строки и функции
Привет... Помогите решить, пожалуйста. Задание такое: Распечатать введенную строку, исключив из нее те символы, которые находятся между скобками ( ). Сами скобки не удалять . Если хотя бы одной скобки нет – сообщить об этом
C++ Удаление из массива http://www.cyberforum.ru/cpp-beginners/thread1028263.html
Добрый день.Программа выполняет три функции, выводит массив, добавляет значения спереди и двигает их в право, и удаляет с конца массива значения, так как удалить наверно не получится то наверно надо заменить нолями. Помогите пожалуйста написать или подскажите как написать функцию int removeEnd() которая должна удалять элементы с конц Удаление из массива. #include <cstdlib> #include...
C++ Удаление элементов массива несоответствующих условию Есть целочисленный массив _array из n элементов. Нужно проверить по условию, и если условие не выполняется - удалить этот элемент. Сделать это нужно без использования нового массива. Подскажите, пожалуйста, как? подробнее

Показать сообщение отдельно
Niklitel
0 / 0 / 0
Регистрация: 06.11.2013
Сообщений: 17

ошибка в программе - C++

04.12.2013, 16:43. Просмотров 132. Ответов 0
Метки (Все метки)

Пожалуйста помогите разобраться, никак не могу понять что не так, почему не так работает=(
в тексте подсчет количества слов палиндромов
Код
#include <iostream>
#include <conio.h>
#include <string>
#include <clocale>
int main()
{
  setlocale(LC_ALL, "rus");
  using namespace std;
  char s[10][81];
  char m[]={NULL};
  int f,i,j,l=0,k=0;
  bool g=true;
  const int n=10;
  cout<<"Введите текст"<<endl;
  for (i=0; i<n; i++) {
	  gets (s[i]); 
      if(!strlen(s[i])) {
      break;
	  }
  }
  for (i=0; i<10; i++) {
	  for (j=0; j<strlen(s[i]); j++) {
		  s[i][j]=tolower(s[i][j]);
	  }
  }
  for (i=0; i<n; i++) {
	  f=strlen(s[i]);
	  for (j=0; j<f; j++) {
		  if (isalpha(s[i][j])) {
			  m[k]=s[i][j];
			  k++;
		  }
		  else {
			  int lon=k;
			  int half=lon/2;
			  for (k=0; k< half; k++) {
				  if(m[k]!=m[lon-1-k]) {
					  g=false;
					  break;
				  }
			  }
			  if (g) {
				  l++;
			  }
			  k=0;
		}
	  }
  }
  cout<<l<<endl;
  getch();
  return 0;
}
как я понимаю, это условие

if (isalpha(s[i][j])) {
m[k]=s[i][j];
k++;
}

, берется только буква, пробелы пропускаются, но, когда переход на другую строку он не останавливается как останавливается при пробеле, как это можно исправить?=(
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru