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

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

Войти
Регистрация
Восстановить пароль
 
juli.ya92
2 / 2 / 0
Регистрация: 25.09.2010
Сообщений: 82
#1

Слово перевётрыш - C++

05.10.2011, 00:16. Просмотров 332. Ответов 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
41
42
43
44
45
46
47
48
49
//
// Переделать программу что бы она считала не коол-во перевёртышей а кол-во не перевёртышей.
//---------------------------------------------------------------------------
//Дан массив слов.Определить количество слов массива, которые не являются "перевертышем".
#include <vcl.h>
#pragma hdrstop
#include<conio.h>
#include<stdio.h>
#include<string.h>
#pragma hdrstop
#pragma argsused
void main()
{
  int ks,ii,kl;
  printf("Vvedite kol-vo slov\n");
  scanf("%d",&kl);
  char **MS= new char *[kl];
  for(int ii=0;ii<kl;ii++)
    MS[ii]=new char[kl];
  puts("vvedite text");
  for(int ii=0;ii<kl;ii++)
    scanf("%s",MS[ii]);
  char **i;
  char *j;
  int kol=0;
  int jj=0,kz=0;
  for(i=MS;i<MS+kl;i++)
    {
      jj=0;
     int d1=strlen(*i);
     if (d1==1){kz++;}
      for(j=*i;j<*i+d1/2;j++,jj++)
    {
      if(*j==*(j+d1-jj-1)) kol++;
      if(kol==d1/2)
        {
          kz++;
          kol=0;
    
        }
     }
    }
  printf("%d",kz-kl);
  getch();
  for(ii=0;ii<kl;ii++)
    delete []MS[ii];
  delete []MS;
}
//---------------------------------------------------------------------------
 Комментарий модератора 
Используйте теги форматирования кода.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.10.2011, 00:16     Слово перевётрыш
Посмотрите здесь:

В тексте заменить слово А(любое слово) на слово В(любое слово). А и В разной длинны - C++
Не могу сообразить как написать программу: Пользователь вводит текст Необходимо замениь слово А(любое слово) на слово В(любое...

Программа, удаляющее последнее слово, выводит первое слово. Что не так? - C++
#include &lt;iostream&gt; using namespace std; int main() { char s; int i = 0; cout &lt;&lt; &quot;stroka: &quot;; cin &gt;&gt; s; for(i =...

Дано слово а. Получить слово b, образованное нечётными буквами слова а. - C++
8.1.2. Помогите, пожалуйста, решить задачу в С++. Дано слово а. Получить слово b, образованное нечётными буквами слова а.

Дана строка, заменить слово min на слово max - C++
#include &lt;stdio.h&gt; int main() { int n = 81; char str; int i; gets(str);

Дано слово, состоящее только из строчных латинских букв. Проверьте, является ли это слово палиндромом. - C++
Дано слово, состоящее только из строчных латинских букв. Проверьте, является ли это слово палиндромом. Выведите YES или NO. Ввод...

Заменить выбранное вами слово на другое слово - C++
Здравствуйте! Прошу помочь разобраться с ошибками. #include &lt;iostream&gt; #include &lt;string&gt; #include &lt;string.h&gt; using namespace...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mиxaил
532 / 437 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
05.10.2011, 00:43     Слово перевётрыш #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
30
31
32
33
34
35
#include <iostream>
#include <string>
 
const int N = 10;
 
bool DoubleDealingFellow ( const std::string word )
{
    bool Checker = true;
    int i = 0;
    while ( ( i < word.length() / 2 ) && ( Checker ) )
    {
        Checker = ( word [ i ] == word [ word.length() - i - 1 ] );
        i++;
    }
    return Checker;
}
 
int main ()
{
    std::string *ArrayWords = new std::string [ N ];
 
    // Ввод масива слов
 
    unsigned int count = 0;
    for ( int index = 0; index < N; index++ )
        if ( !DoubleDealingFellow ( ArrayWords [ index ] ) )
            count++;
 
    std::cout << "Count: " << count << std::endl;
 
    delete []ArrayWords;
 
    std::cin.get();
    return 0;
}
juli.ya92
2 / 2 / 0
Регистрация: 25.09.2010
Сообщений: 82
05.10.2011, 11:49  [ТС]     Слово перевётрыш #3
ну я же попросила эту переделать а не новую непонятную написать мне нужно эту.

Добавлено через 1 минуту
Переделать программу что бы она считала не коол-во перевёртышей а кол-во не перевёртышей.
Цитата Сообщение от juli.ya92 Посмотреть сообщение
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
//
//
//---------------------------------------------------------------------------
//Дан массив слов.Определить количество слов массива, которые не являются "перевертышем".
#include <vcl.h>
#pragma hdrstop
#include<conio.h>
#include<stdio.h>
#include<string.h>
#pragma hdrstop
#pragma argsused
void main()
{
  int ks,ii,kl;
  printf("Vvedite kol-vo slov\n");
  scanf("%d",&kl);
  char **MS= new char *[kl];
  for(int ii=0;ii<kl;ii++)
    MS[ii]=new char[kl];
  puts("vvedite text");
  for(int ii=0;ii<kl;ii++)
    scanf("%s",MS[ii]);
  char **i;
  char *j;
  int kol=0;
  int jj=0,kz=0;
  for(i=MS;i<MS+kl;i++)
    {
      jj=0;
     int d1=strlen(*i);
     if (d1==1){kz++;}
      for(j=*i;j<*i+d1/2;j++,jj++)
    {
      if(*j==*(j+d1-jj-1)) kol++;
      if(kol==d1/2)
        {
          kz++;
          kol=0;
    
        }
     }
    }
  printf("%d",kz-kl);
  getch();
  for(ii=0;ii<kl;ii++)
    delete []MS[ii];
  delete []MS;
}
//---------------------------------------------------------------------------
Используйте теги форматирования кода.
Deviaphan
Делаю внезапно и красиво
Эксперт C++
1286 / 1220 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
05.10.2011, 11:57     Слово перевётрыш #4
Зная общее количество слов и количество полиндромов, решение сводится к сложнейшей операции под названием "вычитание"...
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
05.10.2011, 11:59     Слово перевётрыш #5
juli.ya92, поменяйте условие
C++
1
if(kol==d1/2)
на
C++
1
if(kol != d1/2)
Если, конечно, программа работала правильно
Deviaphan
05.10.2011, 12:09
  #6

Не по теме:

Цитата Сообщение от Thinker Посмотреть сообщение
стория показала, что ваши шутки не всем понятны
И правда, надо пояснить.
Вычитание, это такая операция, противоположная сложению. Её математический смысл в уменьшении одной величины на другую величину. Результат данной операции в простонародье именуется разностью. В большинстве естественных языков, символом вычитания является горизонтальная полосочка, длиной сопоставимая с высотой используемых символов. В языках программирования так же зачастую используется именно полосочка. Нужно иметь в виду, что на компьютерных клавиатурах имеют место быть распространёнными по одной клавише целых ДВЕ горизонтальных полосочки. Для операции вычитания требуется использовать полосочку, расположенную по середине высоты символов. Горизонтальная полосочка, расположенная по низу символа, не являет собой отображения операции вычитания и использовать её в математических выражениях не рекомендуется.
Надеюсь, теперь не возникнет трудности в использовании такого сложного математического инструмента, который простые смертные кличут "минусом".

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.10.2011, 12:17     Слово перевётрыш
Еще ссылки по теме:

Является ли введённое слово с клавиатуры слово палиндромом - C++
С помощью рекурсивной функции выяснить является ли введённое слово с клавиатуры слово палиндромом.

В тексте заменить слово «Петя» на слово «Игорь» - C++
Если в строке содержится слово «Петя», заменить его на слово «Игорь». Не используя replace и string.

Даны два слова.Верно ли,что первое слово начинается на ту же букву,на которую заканчивается второе слово (работа с символами строки) - C++
2)Даны два слова.Верно ли,что первое слово начинается на ту же букву,на которую заканчивается второе слово (работа с символами строки)

В заданном тексте заменить слово А на слово В - C++
Вечер добрый, помогите пожалуйста, составить программу с использованием символьных функций.В заданном тексте заменить слово А на слово В...


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

Или воспользуйтесь поиском по форуму:
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
05.10.2011, 12:17     Слово перевётрыш #7
Цитата Сообщение от Deviaphan Посмотреть сообщение

Не по теме:


И правда, надо пояснить...

Не по теме:

:cofee2:

Yandex
Объявления
05.10.2011, 12:17     Слово перевётрыш
Ответ Создать тему
Опции темы

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