Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/13: Рейтинг темы: голосов - 13, средняя оценка - 4.85
0 / 0 / 0
Регистрация: 11.02.2011
Сообщений: 4

подсчитать, сколько слов имеет нечётное количество символов

11.02.2011, 20:53. Показов 2419. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
пЛИЗ ПОМОГИТЕ РЕшить!!у нас только несколько уроков было по ПАСКАЛю и я не разобрался толкоМ!!!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.02.2011, 20:53
Ответы с готовыми решениями:

Дан текстовый файл, содержащий строки. Подсчитать количество слов в строке, имеющих нечетное количество букв
Дан текстовый файл, содержащий строки. Подсчитать количество слов в строке, имеющих нечетное количество букв

Сколько слов в строке имеет четное количество символов, а сколько - нечетное.
в турбопаскале . условие:Введите строку из нескольких слов. Определите, сколько слов в строке имеет четное количество символов, а сколько...

Определить количество слов в тексте и вывести только те слова, количество символов в которых нечетное
Дан текст, в котором слова отделяются пробелами, в конце стоит точка. Определить количество слов и вывести только те слова, количество...

10
 Аватар для VakhramoV
20 / 20 / 12
Регистрация: 07.02.2011
Сообщений: 82
11.02.2011, 21:10
Цитата Сообщение от SKIL Посмотреть сообщение
пЛИЗ ПОМОГИТЕ РЕшить!!у нас только несколько уроков было по ПАСКАЛю и я не разобрался толкоМ!!!
А слова откуда брать?
0
 Аватар для romanriddick
36 / 36 / 6
Регистрация: 06.07.2010
Сообщений: 152
11.02.2011, 21:30
Цитата Сообщение от VakhramoV Посмотреть сообщение
А слова откуда брать?
Если было несколько уроков , то тогда наверное слова вводятся с клавы ...
0
0 / 0 / 0
Регистрация: 11.02.2011
Сообщений: 4
11.02.2011, 21:32  [ТС]
Цитата Сообщение от VakhramoV Посмотреть сообщение
А слова откуда брать?
вводится строка,представляющая собой набор слов. слова отделяются друг от друга пробелом: Пушкин является величайшим поэтом России!
0
 Аватар для VakhramoV
20 / 20 / 12
Регистрация: 07.02.2011
Сообщений: 82
11.02.2011, 21:55
Накатал за пару минут, сам программирую на паскале всего около трёх дней, строго не судите.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Program Nechetnie_Slova;
uses crt;
var p, schetchik : integer;
    slova, stroka : string;
 
begin
clrscr;
schetchik := 0;
Write('Введите предложение: ');
Read(slova);
slova := slova + ' ';
  p := Pos(' ', slova);
  while p > 0 do
  begin
    stroka := copy(slova, 1, p-1);
    if ((Length(stroka) mod 2) <> 0) then
    begin
    schetchik := schetchik + 1;
    end;
    delete(slova, 1, p + length(' ') - 1);
    p := Pos(' ', slova);
  end;
WriteLn('Количество слов с нечётным количеством символов: ',schetchik);
end.
Но если после слова стоит знак препинания - он считается в количество символов слова. Могу попробовать исправить. Нужно?

Исправил:

Pascal
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
Program Nechetnie_Slova;
uses crt;
var p, schetchik : integer;
    slova, stroka : string;
 
begin
clrscr;
schetchik := 0;
Write('Введите предложение: ');
Read(slova);
slova := slova + ' ';
if (Pos('!', slova) > 0) then begin delete(slova, Pos('!', slova), length('!')); end;
if (Pos('?', slova) > 0) then begin delete(slova, Pos('?', slova), length('?')); end;
if (Pos('.', slova) > 0) then begin delete(slova, Pos('.', slova), length('.')); end;
  p := Pos(' ', slova);
  while p > 0 do
  begin
    stroka := copy(slova, 1, p-1);
    if ((Length(stroka) mod 2) <> 0) then
    begin
    schetchik := schetchik + 1;
    end;
    delete(slova, 1, p + length(' ') - 1);
    p := Pos(' ', slova);
  end;
WriteLn('Количество слов с нечётным количеством символов: ',schetchik);
end.
0
 Аватар для romanriddick
36 / 36 / 6
Регистрация: 06.07.2010
Сообщений: 152
11.02.2011, 21:58
прогу переделал со старой ... удалите ненужные переменные...

Pascal
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
uses crt;
var x,buf:string;
    y:real;
    max,min,k,i,n,error:integer;
    d:array [1..10] of integer;
begin
max:=0;
writeln('Vvod stroki');
readln(x);
i:=length(x);
for n:=1 to i do
    begin
    buf:=copy(x,n,1);
  if buf =' ' then
       begin
        while (k>=n-1) do
        k:=k+1;
        if k mod 2 <>0 then
          max:=max+1;
      end;
    if (error<>0) then
       writeln('Error');
   end;
   writeln('Kolichestvo slov',max);
   
end.
0
 Аватар для VakhramoV
20 / 20 / 12
Регистрация: 07.02.2011
Сообщений: 82
11.02.2011, 22:00
Цитата Сообщение от romanrid**** Посмотреть сообщение
прогу переделал со старой ... удалите ненужные переменные...

Pascal
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
uses crt;
var x,buf:string;
    y:real;
    max,min,k,i,n,error:integer;
    d:array [1..10] of integer;
begin
max:=0;
writeln('Vvod stroki');
readln(x);
i:=length(x);
for n:=1 to i do
    begin
    buf:=copy(x,n,1);
  if buf =' ' then
       begin
        while (k>=n-1) do
        k:=k+1;
        if k mod 2 =0 then
          max:=max+1;
      end;
    if (error<>0) then
       writeln('Error');
   end;
   writeln('Kolichestvo slov',max);
   
end.
Зачем массивы?! Согласитесь, мой вариант намного лучше.
Тьфу, не разглядел суть сразу в этом грязном коде.
0
 Аватар для romanriddick
36 / 36 / 6
Регистрация: 06.07.2010
Сообщений: 152
11.02.2011, 22:10
Цитата Сообщение от VakhramoV Посмотреть сообщение
Зачем массивы?! Согласитесь, мой вариант намного лучше.
прочти певый ряд моего сообщения ... я здесь масивов совсем нигде не использовал...
просто так же как и вы накатал за 2 минуты используя старую прогу)))

Добавлено через 7 минут
Цитата Сообщение от VakhramoV Посмотреть сообщение
Тьфу, не разглядел суть сразу в этом грязном коде.
а что его делает грязным???

П.С.: к стате , удалите 20 и 22 строку ... ничего не изменитса, открою вам секрет один рядок ни в каком языке программирования не заключаетса в блок
begin
end;
и поправте 12,13,14
0
2 / 2 / 2
Регистрация: 03.02.2011
Сообщений: 21
11.02.2011, 23:06
Ну я вот сделал так -)
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
var
  str, slovo: String; // В переменной str будет хранится предложение, а в slovo будет хранится слова предложения
  i,count: Integer; // i - для цикла , 
 
begin
  WriteLn('Введите предложение: ');
  Read(str);
  for i := 1 to Length(str) do // Цикл до размера строки
  begin
    if Pos(str[i], ' ') = 0  then // ищим пробел
      slovo := slovo + str[i]
     else
    begin
    if odd(Length(slovo)) then // проверка на нечетность если нечетное то -) 
    begin
      Inc(count); // Прибавляем к переменной raz +1
    end; 
  end;
   end;
  WriteLn(count, ' слов/a имеет нечётное количество ');
  
  
end.
0
 Аватар для romanriddick
36 / 36 / 6
Регистрация: 06.07.2010
Сообщений: 152
11.02.2011, 23:13
стрите строки 15 , 17...
и 13, 18
0
 Аватар для VakhramoV
20 / 20 / 12
Регистрация: 07.02.2011
Сообщений: 82
12.02.2011, 13:11
Наконец доработал свой вариант, просто вчера немного устал и спать уже ложился.

Вот окончательный вариант:
Pascal
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
Program Nechetnie_Slova;
uses crt;
var p, schetchik : integer;
    slova, stroka : string;
 
begin
clrscr;
schetchik := 0;
Write('Введите предложение: ');
Read(slova);
WriteLn;
slova := slova + ' ';
while (Pos('?', slova) > 0) do begin delete(slova, Pos('?', slova), length('?')); end;
while (Pos('!', slova) > 0) do begin delete(slova, Pos('!', slova), length('!')); end;
while (Pos('.', slova) > 0) do begin delete(slova, Pos('.', slova), length('.')); end;
while (Pos(',', slova) > 0) do begin delete(slova, Pos(',', slova), length(',')); end;
while (Pos('- ', slova) > 0) do begin delete(slova, Pos('- ', slova), length('- ')); end;
while (Pos(' -', slova) > 0) do begin delete(slova, Pos(' -', slova), length(' -')); end;
while (Pos(':', slova) > 0) do begin delete(slova, Pos(':', slova), length(':')); end;
while (Pos(';', slova) > 0) do begin delete(slova, Pos(';', slova), length(';')); end;
while (Pos('"', slova) > 0) do begin delete(slova, Pos('"', slova), length('"')); end;
  p := Pos(' ', slova);
  while p > 0 do
  begin
    stroka := copy(slova, 1, p-1);
    if ((Length(stroka) mod 2) <> 0) then
    begin
    schetchik := schetchik + 1;
    end;
    delete(slova, 1, p + length(' ') - 1);
    p := Pos(' ', slova);
  end;
WriteLn('Количество слов с нечётным количеством символов: ',schetchik);
end.



Добавлено через 7 часов 22 минуты
Кому интересен ход работы:

http://h1813090.stratoserver.n... VG6XpQ.jpg
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.02.2011, 13:11
Помогаю со студенческими работами здесь

Подсчитать количество предложений, содержащие нечетное количество слов
Здравствуйте всем! Вот дано такая задача: Подсчитать количество предложений,содержащие нечетное количество слов. У меня есть...

Определить сколько слов в тексте имеет длину 5 символов
Ввести текст. Определить сколько слов в тексте имеет длину 5 символов.

Работа с файлами (подсчитать количество слов в файле, содержащих нечетное количеством букв)
Первый раз работаю с файлами и тут у меня проблемы. После компиляции выводит неправильный ответ и выбивает: 'Lab 8.exe': Loaded...

Напечатать все слова последовательности, удалив из каждого слова нечётные буквы, если слово имеет нечётное количество символов
Напечатать все слова последовательности, удалив из каждого слова нечётные буквы, если слово имеет нечётное количество символов

Дана последовательность, состоящая из 10 слов. Напечатать те слова последовательности, которые имеют нечётное количество символов
Дана последовательность, состоящая из 10 слов. Напечатать те слова последовательности, которые имеют нечётное количество символов


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru