Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.10.2008, 19:36   #1
Dj-Eyal
 
Регистрация: 28.10.2008
Сообщений: 3
По умолчанию 4 Нетрудные задачки

Задача 1. Факториал

Напишите программу, которая по введенному числу N (1≤N≤10) вычислит и напечатает значение N! = 1*2*3*…*N
Пример ввода: 4
Пример вывода: 24

Задача 2. Среднее расстояние на переговорах

Три участника деловых переговоров сели за треугольный стол. Каждый сел со своей стороны этого стола, причем ровно в середине стороны. Напишите программу, которая вычислит среднее расстояние между участниками переговоров.
Программе вводится 3 числа – длины сторон стола.
Результатом является одно число – среднее расстояние между участниками переговоров.
Примеры:
Ввод: 3 4 5 Вывод: 2
Ввод: 5 5 7 Вывод: 2.83333333

Задача 3. Маршрутное такси

В час пик на остановку одновременно подъехали три маршрутных такси, следующие по одному маршруту, в которые тут же набились пассажиры. Водители обнаружили, что количество людей в разных маршрутках разное, и решили пересадить часть пассажиров так, чтобы в каждой маршрутке было поровну пассажиров. Требуется определить, какое наименьшее количество пассажиров придется при этом пересадить.
Программе вводится три натуральных числа, не превосходящих 100 - количества пассажиров в первой, второй и третьей маршрутках соответственно.
Программа должна выводить одно число - наименьшее количество пассажиров, которое требуется пересадить. Если это невозможно, выведите слово IMPOSSIBLE.
Примеры:
Ввод: 1 2 3 Вывод: 1
Ввод: 99 100 100 Вывод: IMPOSSIBLE

Задача 4. Симметричная последовательность

Последовательность чисел назовем симметричной, если она одинаково читается как слева направо, так и справа налево. Например, следующие последовательности являются симметричными:
1 2 3 4 5 4 3 2 1
1 2 1 2 2 1 2 1
Вашей программе будет дана последовательность чисел. Требуется определить, какое минимальное количество и каких чисел надо приписать в конец этой последовательности, чтобы она стала симметричной.
Вводится сначала число N — количество элементов исходной последовательности. Далее вводится N чисел — элементы этой последовательности. 1≤N≤100, элементы последовательности — натуральные числа от 1 до 9.
Выведите сначала число M — минимальное количество элементов, которое надо дописать к последовательности, а потом M чисел (каждое — от 1 до 9) — числа, которые надо дописать к последовательности.
Примеры:
Ввод Вывод
9
1 2 3 4 5 4 3 2 1 0

5 3
1 2 1 2 2 1 2 1

5 4
1 2 3 4 5 4 3 2 1
Dj-Eyal вне форума Ответить с цитированием
Старый 29.10.2008, 01:21   #2
Min
Форумчанин
 
Регистрация: 12.09.2008
Сообщений: 239
По умолчанию

вот первая:

Код:
function f(x:longint):longint;
begin
 if x=1 then f:=x else f:=f(x-1)*x;
end;
var x:integer;
begin
 readln(x);
 writeln(f(x));
 readln;
end.
Надо бы избавиться от привычки ставить многоточие.....
Min вне форума Ответить с цитированием
Старый 29.10.2008, 01:26   #3
Min
Форумчанин
 
Регистрация: 12.09.2008
Сообщений: 239
По умолчанию

вот вторая:
Код:
var x,y,z:integer;
    L:real;
begin
 readln(x,y,z);
 L:=x/6+y/6+z/6;
 writeln(L:0:8);
 readln;
end.
Надо бы избавиться от привычки ставить многоточие.....
Min вне форума Ответить с цитированием
Старый 29.10.2008, 01:31   #4
Min
Форумчанин
 
Регистрация: 12.09.2008
Сообщений: 239
По умолчанию

третяя:
Код:
var A:array[1..3] of byte;
    S,i,q:integer;
begin
 readln(a[1],a[2],a[3]);
 S:=a[1]+a[2]+a[3];
 if S mod 3<>0 then writeln('IMPOSIBLE')
 else
  begin
   S:=S div 3;
   for i:=1 to 3 do
    if a[i]>S then inc(q);
   writeln(q);
  end;
 readln;
end.
Надо бы избавиться от привычки ставить многоточие.....
Min вне форума Ответить с цитированием
Старый 29.10.2008, 02:21   #5
Min
Форумчанин
 
Регистрация: 12.09.2008
Сообщений: 239
По умолчанию

во последняя....... даже в один цикл уложилась))))))
Код:
var i,X:integer;
    a:array[-1..100] of byte;
    N:byte;
    Center:real;
begin
 writeln('vvedite kol-vo:');
 readln(N);
 writeln('Vvedite elementi:');
 read(a[1]);
 a[0]:=255;
 a[-1]:=255;
 Center:=1;
 for i:=2 to N do
  begin
   read(a[i]);
   if(a[i]<>a[trunc(Center*2)-i]) then
    if(a[i]=a[i-2]) then Center:=i-1
     else
      if a[i]=a[i-1] then Center:=i-0.5
       else Center:=i;
  end;
 X:=trunc((Center-0.5)*2)-N;
 writeln(X);
 readln(a[1]);
end.
Надо бы избавиться от привычки ставить многоточие.....
Min вне форума Ответить с цитированием
Старый 29.10.2008, 15:51   #6
Dj-Eyal
 
Регистрация: 28.10.2008
Сообщений: 3
По умолчанию

Спасибо большое )
Dj-Eyal вне форума Ответить с цитированием
Старый 29.10.2008, 19:05   #7
Dj-Eyal
 
Регистрация: 28.10.2008
Сообщений: 3
По умолчанию

А в первом номере ограничени N (1≤N≤10) куда прописать нужно?
Dj-Eyal вне форума Ответить с цитированием
Старый 29.10.2008, 20:39   #8
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

begin
repeat
write('x=');
readln(x);
until (x>=1)and(x<=10); {если введешь другие числа, не примет, нужно вводить снова}
writeln(f(x));
readln;
end.
puporev вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
задачки мандаринка Паскаль, Turbo Pascal, PascalABC.NET 3 02.02.2008 17:02
Задачки на Си Cyn4uk Помощь студентам 3 06.12.2007 23:51
Задачки по С Aero Помощь студентам 3 04.10.2007 18:41
Нужно СРОЧНО решить нетрудные задачи по QBasic Final Фриланс 2 20.06.2007 22:29