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

№1. В строке посчитать количество слов,начинающихся с буквы «ф».

10.03.2011, 16:25. Показов 5611. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
помогите пожалуйста
№1. В строке посчитать количество слов, начинающихся с буквы «ф».
№2. Напечатать слова строки, которые начинаются и оканчиваются на одну букву. Например, для строки «Мы построили шалаш» на экран должно выводиться «шалаш».
№3. В строке посчитать количество слов, в которых нет буквы «о» и длина которых нечетная
заранее спасибо)))
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.03.2011, 16:25
Ответы с готовыми решениями:

Строки. Посчитать в строке количество слов, начинающихся на «Ав».
Решите пожалуйста Посчитать в строке количество слов, начинающихся на «Ав». работать со строками при решении

Посчитать количество слов, начинающихся с буквы b
Дана строка, содежащая английский текст. Посчитать кол-во слов, НАЧИНАЮЩИХСЯ с буквы b. Буду очень благодарна, если вы решите эту...

Посчитать количество слов, начинающихся со строчной буквы
Помогите, пожалуйста Дано предложение (вводится пользователем с клавиатуры). Посчитать количество слов, начинающихся со строчной буквы.

3
 Аватар для LeDep
74 / 74 / 44
Регистрация: 12.02.2011
Сообщений: 380
10.03.2011, 17:48
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

№2.
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
program Project1;
 
(*Перевод букв кириллицы в верхний регистр. Для кодовой страницы CP866.*)
function UpCaseCyr(const S : String) : String;
var
  i : Integer;
  Res : String;
begin
  Res := '';
  for i := 1 to Length(S) do begin
    case S[i] of
      'а'..'п' : Res := Res + Char( Ord(S[i]) - 32 );
      'р'..'я' : Res := Res + Char( Ord(S[i]) - 80 );
      'ё' : Res := Res + 'Ё';
    else
      Res := Res + S[i];
    end;
  end;
  UpCaseCyr := Res;
end;
 
const
  (*Множество разделителей слов.*)
  D = [' ', '.', ',', ':', ';', '!', '?', '-', Char(9), Char(10), Char(13)];
var
  StrSrc, StrTmp : String;
  i, Pos2 : Word;
begin
  repeat
    Writeln('Задайте строку:');
    Readln(StrSrc);
 
    Writeln('Слова начинающиеся и заканчивающиеся на одну и ту же букву:');
    (*Перебор всех символов строки.*)
    Pos2 := 0;
    for i := 1 to Length(StrSrc) do begin
      (*Пропускаем разделители.*)
      if StrSrc[i] in D then Continue;
      (*Учитываем очередной символ слова.*)
      StrTmp := StrTmp + StrSrc[i];
      (*Отслеживаем конец слова.*)
      if (i = Length(StrSrc)) then
        Pos2 := i
      else if StrSrc[i + 1] in D then
        Pos2 := i
      ;
      (*Если конец слова найден.*)
      if Pos2 > 0 then begin
        if UpCaseCyr(StrTmp[1]) = UpCaseCyr(StrTmp[ Length(StrTmp) ]) then begin
          (*Распечатываем слово.*)
          Writeln(StrTmp);
        end;
        StrTmp := '';
        Pos2 := 0;
      end;
    end;
 
    Writeln('Повторить - Enter. Выход - любой символ + Enter.');
    Readln(StrTmp);
  until StrTmp <> '';
end.
1
 Аватар для VakhramoV
20 / 20 / 12
Регистрация: 07.02.2011
Сообщений: 82
10.03.2011, 19:36
LeDep

Нахрена изобретать велосипед? Теперь стандартные функции UpperCase и LowerCase не катят?


Лучше:
Pascal
1
    for i := Length(StrSrc) downto 1 do
1
Mobile Software Engineer
Эксперт С++
 Аватар для Ev[G]eN
5381 / 1585 / 956
Регистрация: 23.01.2011
Сообщений: 3,214
10.03.2011, 20:56
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Цитата Сообщение от ~Лиличка~ Посмотреть сообщение
№1. В строке посчитать количество слов, начинающихся с буквы «ф».
одно "но"...если самое первое слово на "ф", то его не пос4итает...додумайте
Pascal
1
2
3
4
5
6
7
8
9
10
var
 st: string;
 i, count: integer;
begin
 readln(st);
  for i:=1 to length(st) do
    if ((st[i]='ф')or(st[i]='Ф')) and (st[i-1]=' ') then
     inc(count);
 write(count);
end.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.03.2011, 20:56
Помогаю со студенческими работами здесь

Посчитать в строке количество слов, начинающихся на «Ав»
Посчитать в строке количество слов, начинающихся на «Ав» Вводятся слова (символы) в edit, а вывод в label. РЕШИТЬ В LAZARUS!...

Посчитать в строке количество слов, начинающихся на «av»
Посчитать в строке количество слов, начинающихся на «av».

Посчитать количество слов начинающихся с той же буквы, что и первое
Цель программы считать количество слов начинающихся с той же буквы, что и первое. Вроде бы все нормально, но выдает совершенно не...

Найти в строке количество слов, начинающихся с буквы А
Дана строка. Найти количество слов, начинающихся с буквы А Dim a as string Dim kol, i as Integer Label1.text=&quot;&quot; ...

Подсчитать количество слов в строке начинающихся с буквы 'а'
Всем привет!Я в программировании ноль,поэтому очень прошу помочь с программой:Ввести с экрана строку.Подсчитать,сколько слов в строке...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru