Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
Kate9399
0 / 0 / 0
Регистрация: 04.02.2019
Сообщений: 18
1

Переделать программу, используя подпрограммы (процедуры и функции)

18.02.2019, 18:01. Просмотров 494. Ответов 1
Метки нет (Все метки)

Напечатать все слова, отличные от последнего слова. Для каждого слова указать сколько раз оно встречается в полученном предложении. Сообщение об одном и том же слове должно печататься не более одного раза + Удалить все слова с нечетными номерами и перевернуть все слова с четными номерами.

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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
program prgr;
 
{$APPTYPE CONSOLE}
 
uses
SysUtils;
 
 
type
  TLetters = set of Char;
 
var
  Letters: TLetters;
  i, j, M, n, k, d: integer;
  sl, st, rez: string;
  b, c: array[1..100] of string;
  F: boolean;
 
begin
  Letters := ['A'..'Z', 'a'..'z'];
  repeat
    //проверка на ввод пустой строки
    readln(st);
    st := trim(st);
    if length(st) > 1 then F := true;
    
    //проверка на ввод некорректных символов
    i := 1;
    n := length(st);
    while (i <= n) and F do
    begin
      if (not (st[i] in Letters)) and (st[i] <> ' ') then F := false;
      inc(i);
    end;
    if not F then writeln('Incorrect symbol or empty string!');
  until F;
  
  
  // удаление последнего слова и вывод оставшейся строки
  i := n;
  while st[i] <> ' '  do
  begin
    delete(st, i, 1);
    dec(i)
  end;
  writeln(st);
  
  //поиск слов в строке и запись их в массив
  st := st + ' ';n := n + 1;sl := '';
  j := 1;
  for i := 1 to n do
    if st[i] <> ' ' then sl := sl + st[i]
    else if sl <> '' then begin
      b[j] := sl;
      inc(j);
      sl := '';
    end;
  
  //поиск в массиве различных слов
  c[1] := b[1];
  M := 1;
  for i := 2 to j - 1 do 
  begin
    f := true;
    d := 0;
    for k := 1 to M do
      if b[i] = c[k] then f := false;
    
    
    if f then begin
      M := M + 1;
      c[M] := b[i];
    end;
    
  end;
  
  
   //сравнение массива различных слов с первоначальным массивом слов без последнего
  //и подсчет количества повторяющихся слов
  
  for i := 1 to M do
  begin
    d := 0;
    for k := 1 to j - 1 do
      if c[i] = b[k] then inc(d);
    write(c[i], '-', d, '     ');
  end;
  Writeln;
  
  //поиск слов в строке без последнего, четные переворачиваем, нечетные пропускаем
  
  st := st + ' ';n := n + 1;sl := '';
  j := 0;
  for i := 1 to n do
  begin
    if st[i] <> ' ' then sl := sl + st[i]
    else if sl <> '' then begin
      inc(j);
      if j mod 2 = 0 then begin
        rez := '';
        for k := 1 to length(sl) do
          rez := sl[k] + rez;
        write(' ', rez, ' ');
      end;
      
      sl := '';
    end;
  end;
  Readln;
end.
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.02.2019, 18:01
Ответы с готовыми решениями:

Переделать программу чтоб в ней были процедуры и функции
очень надо, помогите , в ней сейчас нет процедур и функций ,но надо переделать чтоб они там были,...

Составить программу используя процедуры и функции.
Буду очень благодарен, тем кто поможет. Найти нормы матрицы A размера 4x3 и матрицы B размера...

Составить программу, используя процедуры и функции модуля CRT
Выполнить задание, используя процедуры и функции модуля CRT.

как в программу запихать не менее одной подпрограммы-процедуры(функции)
определить значение функции(вроде справился..) необходимо использовать не менее одной...

Составить программу вычсления функции с использованием подпрограммы-процедуры при x=-0.45
Составить программу вычсления функции с использованием подпрограммы-процедуры при x=-0.45

1
ZX Spectrum-128
Модератор
Эксперт Pascal/Delphi
4767 / 3411 / 4015
Регистрация: 05.06.2014
Сообщений: 17,048
20.02.2019, 08:20 2
Kate9399, что делает ваша программа в разделе pascal abc?
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.02.2019, 08:20

Переделать программу, что бы была основная программа и процедуры или функции
помогите, пожалуйста, переделать эту программу, что бы она была с процедурами и функциями:Найти...

Создайте программу для вычисления у используя процедуры и функции
Создайте программу для вычисления у используя процедуры и функции: у=√3+(sin(x-2)/x*x) если...

cоставить программу, используя процедуры и функции для работы с файлами
Дан файл вещественных чисел. Найти количество его локальных максимумов.


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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