1

(5 відповідей, залишених у Pascal/Delphi)

ну як реалізувати стек і запис в нього  и виведення я розумію 
але як зробити перебі елементів щось не тямлю

тут   процедура  напевно має рекурсивна бути  але яка?

2

(4 відповідей, залишених у Pascal/Delphi)

Ось розвязок   

program kjj;
    var t:array[2..9] of string;
          i,m:integer;
  procedure sign_choice4(s,r : longint; op : char; n : integer);
  var newr:longint;
  begin
    if op = '+'  then newr := r+s  else newr := r-s;
    if n <= 9  then begin
       t[n] := '+'; sign_choice4(n,newr,'+',n+1);
       t[n] := '-'; sign_choice4(n,newr,'-',n+1);
       t[n] := ''; sign_choice4(s*10+n,r,op,n+1);
    end
    else
        if newr=m  then begin
          for i := 2  to 9  do write(i-1,t[i]);
          writeln('9');
        end;
  end;
  begin
   readln(m);
   sign_choice4(1,0,'+',2);
  end.

3

(5 відповідей, залишених у Pascal/Delphi)

Ну що так ви краще розумієте суть   завдання

4

(7 відповідей, залишених у Pascal/Delphi)

Не розумію у чому саме проблема.



проблем у мене немає  бо я не автор теми а вирішував її

5

(7 відповідей, залишених у Pascal/Delphi)

вибачаюсь ,  просто машинально  ввів  кілька змінних які  в коді програми не потребуються  і забув стерти....

6

(5 відповідей, залишених у Pascal/Delphi)

Анаграматор — спеціальний пристрій для отримання зі слова його анаграм (тобто слів, які записані тими ж буквами, але в іншому порядку). Цей пристрій уміє виконувати 2 операції:
1)    Взяти чергову букву вихідного слова і помістити її у стек;
2)    Взяти букву зі  стеку і добавити її у кінець вихідного слова;
Стек —це вмістилище даних, яке працює за принципом «перший прийшов – останній пішов». Стек можна уявити собі як дитячу пірамідку. Коли ми додаємо букву у стек, це відповідає тому, що на стержень пірамідки ми надіваємо зверху кільце, на якому написано відповідну букву.  Коли беремо букву зі стеку , то це відповідає тому, що ми знімаємо зі стержня верхнє кільце і дивимося яка буква на ньому написана.
Наприклад, слово TROT у слово TORT може бути перетворене Анаграматором двома різними послідовностями операцій: 11112222 або 12112212.
Напишіть програму, яка за двома заданими словами обчислює кількість різних послідовностей операцій Анаграматора, які перетворюють перше з цих слів у друге, а також знаходить самі ці послідовності.
Формат вхідних даних
Перша стрічка вхідного файлу an_in.txt  містить вхідне слово, а друга — слово, яке слід отримати. Слова містять тільки великі латинські букви і мають довжину не більше 50 символів. Обидва слова мають однакову довжину. В цих строках не міститься пробілів.
Формат вихідних даних
У першій стрічці вихідного файлу an_out.txt виводиться кількість послідовностей операцій Анаграматора з допомогою яких можна перетворити перше слово у друге, а також самі послідовності операцій. Кожна послідовність повинна бути виведена в окремій стрічці і містити лише цифри 1 і 2 (які вказують порядок виконання операцій), виведених без пробілів.


MADAM
ADAMM   
1111222122
1111222212
1121212122
1121212212
4

7

(2 відповідей, залишених у Pascal/Delphi)

суть питання як реалізувати   повернення  індекса  до  1  коли  від доходить до макс значення  і

8

(2 відповідей, залишених у Pascal/Delphi)

Після завершення Помаранчевої революції, комендант наметового містечка вирішив видати особливу грамоту «Стояв до останнього» тому, хто останнім зніме свій намет з Хрещатика.
Оскільки, бажаючих отримати єдину грамоту було багато, комендант вирішив діяти чесно. Він по колу розмістив кружечки з номерами усіх N наметів і попросив кожного члена наметового містечка задумати якесь число. Коли всі задумані числа додали, комендант отримав число M.
Далі комендант почав відраховувати від першого кружечка до кружечка з номером М. Номер намету, на який випадало число М знімався з кругу, знімався сам намет, а комендант продовжував знову рахувати до М починаючи з наступного кружечка.
Допоможіть коменданту за заданими з клавіатури N і M встановити кому видавати грамоту.

9

(7 відповідей, залишених у Pascal/Delphi)

program  mas;
var
a: array [1..100] of integer;
b: array [1..100] of integer;
k,z:real;    i:integer;
begin
   a[1]:=1;
for i:=2 to 100 do
        begin
        a[i]:=a[i-1]+2;
        end;

for i:=1 to 100 do
begin
if a[i]<5 then  b[i]:= trunc((abs(a[i]))/2);
if a[i]>=5 then b[i]:= 2* a[i];
end;
writeln('----------МАСИВ  А----------');
for i:=1 to 100 do
begin
write(' ',a[i],' ');
end;
writeln;

writeln('----------МАСИВ  B----------');
for i:=1 to 100 do
begin
write(b[i]:2,' ');
end;

end.

10

(4 відповідей, залишених у Pascal/Delphi)

У мене виникає питання по реалізації  циклу  , тобто як  саме групувати цифри  щоб отримати результат,
я думаю треба зєднувати цифри в числа  а потім  оператором case перебирати варіанти + чи -  поки не вийде сума , але послідовність мені поки що в голову не приходить ...

11

(4 відповідей, залишених у Pascal/Delphi)

Program Moroz;
type obme=1..100;
var
n,m,k,i,z:obme;
dity:array[1..100]  of integer;              {тут вказується в якому мішку лежить подарунок для кожної дитини}
mih1: array[1..100] of integer;
mih2: array[1..100] of integer;
 begin
 writeln('Скільки дітей ');    readln(n);
 writeln('Скільком дітям  подарунки лежать у 1 міщку' ) ;  readln(m);
 writeln('Скільком дітям  подарунки лежать у 2 міщку') ; readln(k);
 
 for i:=1 to m do
 begin
 writeln('введіть номер ', i,'  ої дитини що отримає подарунок з 1 мішка');
 readln(mih1[i]);
 end;
 
  for i:=1 to k do
 begin
 writeln('введіть номер ', i,'  ої дитини що отримає подарунок з 2 мішка');
 readln(mih2[i]);
 end;
 
  for i:=1 to n do
 begin
 if mih1[i]<>0 then dity[mih1[i]]:=1;
 if mih2[i]<>0 then dity[mih2[i]]:=2;
 end;

  for i:=1 to n do
 begin
   if dity[i]=0   then dity[i]:=3;
  end;
  
 z:=n-m-k;
  write('Дітей що отримають подарунок з 3 мішку ',z, 'а це діти з номерами');
 for i:=1 to n do
 begin
if dity[i]=3 then write(i);
 end;
 end.

12

(1 відповідей, залишених у Pascal/Delphi)

Населені пункти бувають двох типів: села і міста. Крім того, у державі є одна столиця (вона може розташовуватися як у місті, так і на селі). Кожна дорога з’єднує два населених пункти і для проїзду по ній потрібно Ті хвилин. У столиці було вирішено провести державну командну олімпіаду з інформатики. Для цього в усі міста зі столиці були відправлені гінці (по одному гінці до одного міста) з інформацією про олімпіаду. Напишіть програму, яка порахує, в якому порядку і за який час кожен з гінців дістанеться до свого міста. Вважаться, що гонець під час шляху не спить і ніде не затримується.
Формат вхідних даних.
У вхідному файлі спочатку записані 3 числа N, M, K – кількість населених пунктів, кількість доріг і кількість міст (2<=N<=1000, 1<=M<=10000, 1<=K<=N). Далі записано номер столиці С (1<=C<=N). Наступні К чисел задають номери міст. Далі йдуть М трійок чисел Si, Ei, Ti, що описують дороги: Si i Ei – номери населених пунктів, що з’єднує ця дорога, а Ті – час для проїзду по ній (1<=Ti<=100). Гарантується, що до кожного міста зі столиці можна дістатися по дорогах (можливо, через інші населені пункти).
Формат вихідних даних
Виведіть у вихідний файл К пар чисел: для кожного міста повинен бути виведений його номер і мінімальний час, коли гонець може в ньому появитися (час вимірюється в хвилинах з того моменту, як гінці виїхали зі столиці). Пари у вихідному файлі мають бути впорядковані за часом прибуття гінця.

Приклад


Input.txt                    Output.txt
5  4  5  1                    1  0
1  2  3  4  5                    2  1
1  2  1                        3  11
2  3  10                        4  111
3  4  100                    5  211
4  5  100

5  5  3  1                    5  1
2  4  5                        2  1
2  1  1                        4  101
2  3  10
3  4  100
4  5  100
1  5  1



Буду сподіватись що на форумі є   ті  хто  розбереться в цьому.

13

(4 відповідей, залишених у Pascal/Delphi)

Задано ціле число m. Вставити між деякими цифрами 1, 2, 3, 4, 5, 6, 7, 8, 9, які записані саме в такому порядку, знаки «+» и «-» так, щоб значення отриманого виразу було число m. Наприклад, якщо m=122, то підходить вираз: 12+34-5-6+78+9. Якщо розставити знаки в такий спосіб неможливо, то повідомте про це (вивести в текстовий файл повідомлення «неможливо»).

У вхідному файлі Input.txt записане ціле число m (-10000<m<10000)
В вихідному файлі Output.txt записують отриманий вираз (в наведеному прикладі він: 12+34-5-6+78+9), або «неможливо».


буду вдячний за допомогу!!!!