![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Ali |
![]()
Сообщение
#1
|
Гость ![]() |
Помогите очень надо, а я в программировании не силен, заранее спосибо
1. Дана последовательность, содержащая от 2 до 30 слов, в каждом из которых от 2 до 10 латинских букв, между соседними словами - не менее одного пробела, за последним словом - точка. Напечатать все слова, отличные от последнего слова, предварительно преобразовав каждое из них по следующему правилу: удалив из слова все предыдущие вхождения последней буквы. 2. Дана непустая последовательность слов, в каждом из которых от 1 до 6 латинских букв n, л между соседними словами - запятая, за последним словом - точка. Напечатать те слова, у которых одинаковые "соседи", т.е. совпадают предыдущее и следующее слова (определить процедуру readword(w) которое вводит очередное слово и присваевает его 6-литерной строке w, а запятую или точку, присваевает некоторой глобальной переменной). 3. type строка=packed array(1..100) of char; описать рекурсивную логическую функцию симм(s,i,j) проверяющую, является ли симметричной часть строки S, начинающаяся i-м и кончающаяся j-м ее элементами |
![]() ![]() |
Гость |
![]()
Сообщение
#2
|
Гость ![]() |
решала я ее так:
uses crt; var mas:array[1..500,1..2] of integer; n,k,s2,s1,j,i: integer; procedure sum; Var i,j,k:integer; s1:integer; begin s1:=0; inc(k); for i:=1 to trunc(j/2) do if (j mod i:=0) then s1:=s1+i; mas[k][1]:=s1; mas[k][2]:=j; end; Begin begin write('введите число'); readln(n); k:=0; for i:=2 to n do sum; end; s2:=0; for i:=1 to k do for j:=1 to k do if (i<>j) then begin if (mas[i][1]=mas[j][2]) and (mas[j][1]=mas[i][2]) then begin writeln(mas[i][2], ' ', mas[j][2]); inc(s2); end; if (s2=24) then begin readkey; clrscr; s2:=0; end; end; readln; end. |
![]() ![]() |
![]() |
Текстовая версия | 24.06.2025 4:25 |