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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.12.2006, 16:48   #1
RUsoft
 
Регистрация: 22.12.2006
Сообщений: 4
По умолчанию Олимпиада по информатике

Пожалуйста, помогите мне с олимпиадой по информатике. Дело в том, что я думал на олимпиаде будут вопросы связанные с основой ОС Windows, но не тут то было. Вопросы связаны с Паскалем. Я Паскаль не знаю (лучше бы были по Си). Завтра будет первый тур, а второй будет в середине января бедующего года. Я попытаюсь хотя бы основу Паскаля выучить за пол месяца. Люди, пожалуйста, ответьте хоть на сколько вопросов.
Заранее огромное Спасибо!
Вот вопросы:

1. Вводится числа от 9 до 9 до тех пор, пока не будет введен 0. Всего будет введено не больше 100 чисел. Посчитать количество единиц в этой последовательности, количество двое, количество троек и так далее (в выходном файле должно быть 9 чисел).
Имя входного файла: col.in Имя выходного файла: col.out
Пример
col.in _________________________col.out
1 1 4 1 5 8 6 3 5 1 0 __________4 0 1 1 2 1 0 1 0
2. С клавиатуры вводится строка символов (длина не превышает 100). Вывести на экран эту строку, преобразовав ее по следующему правилу:
- Символы на четных позициях остаются на своих местах;
- Символы на нечетных позициях меняют порядок вывода.
Имя входного файла: posled.in Имя выходного файла: posled.out
Пример
posled.in __________________posled.out
1234 _____________________3214
3. По окончанию массового забега все его участники уложили свои нагрудные номера в один ряд в том порядке, в каком они пересекли финишную черту, образовав в результате К-значное число.
Требуется определить M (M<1000) количество участников забега по известному К. В случае невозможности определить количество участников вывести сообщение: ''net reshenija''.
Имя входного файла: input.txt Имя выходного файла: output.txt
Пример
posled.in _________________posled.out
15 __________________________12
4. Дано число N. Найти из диапазона от 1 до N с максимальной суммой делителей (включая непростые делители, 1 и само число). Если таких чисел несколько, выведите любые из них.
Имя входного файла: max.in Имя выходного файла: max.out
Пример
max.in ______________max.out
5 ______________________4
5. Дана последовательность из N (2<=N<= 100000) чисел. Найти количество различных чисел в этой последовательности, определить эти числа. Вывести их в порядок уменьшения количества встречаний их в данной последовательности.
Имя входного файла: pos.in Имя выходного файла: pos.out
Пример
pos.in ______________pos.out
5 __________________1 7 5 3 0
1
1
1
30
7
7
6. Матрица размерностью NxM (N – количество строк, M – количество столбцов, 2<=N и M<= 100000) заполнена числами от 1 до N*M, следующим образом: сначала заполняется первая строка слева направо от 1 до значения M (по возрастанию), затем вторая строка слева направо от M+1 до 2М, и так далее. По введенным параметрам матрицы и числу К, определить в какой строке и в каком столбце стоит данное число.
Имя входного файла: nomer.in Имя выходного файла: nomer.out
Пример
nomer.in __________________nomer.out
4 ________________________4
4 ________________________3
15

Последний раз редактировалось RUsoft; 22.12.2006 в 16:50.
RUsoft вне форума Ответить с цитированием
Старый 22.12.2006, 18:46   #2
AVer
Андрей
Форумчанин
 
Аватар для AVer
 
Регистрация: 21.11.2006
Сообщений: 457
По умолчанию

Задача №1
Код:
var F:file of integer;
A:array[1..100] of integer;
I,N,K,S:Integer;
begin
ReadLN(I);
Assign(F,'Col.in');
ReWrite(F);
repeat
Inc(K);
Write(F,I);
ReadLn(i);
until I = 0;
Close(F);
ReSet(F);
repeat
Inc(I);
Read(F,A[I]);
until EoF(F);
Assign(F,'Col.out');
ReWrite(F);
for n:=1 to 9 do
 begin
 for i:=1 to k do
 if A[i] = n then
 Inc(S);
 Write(F,S);
 S:=0;
 end;
Close(F);
end.
ICQ: 5311314
[SIGPIC][/SIGPIC]
AVer вне форума Ответить с цитированием
Старый 22.12.2006, 19:46   #3
RUsoft
 
Регистрация: 22.12.2006
Сообщений: 4
По умолчанию

Цитата:
Сообщение от AVer Посмотреть сообщение
Задача №1
Код:
var F:file of integer;
A:array[1..100] of integer;
I,N,K,S:Integer;
begin
ReadLN(I);
Assign(F,'Col.in');
ReWrite(F);
repeat
Inc(K);
Write(F,I);
ReadLn(i);
until I = 0;
Close(F);
ReSet(F);
repeat
Inc(I);
Read(F,A[i]);
until EoF(F);
Assign(F,'Col.out');
ReWrite(F);
for n:=1 to 9 do
 begin
 for i:=1 to k do
 if A[i] = n then
 Inc(S);
 Write(F,S);
 S:=0;
 end;
Close(F);
end.
Спасибо Вам большое!
RUsoft вне форума Ответить с цитированием
Старый 23.12.2006, 07:57   #4
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
По умолчанию

что-то задачи все похожие.
даже не знаю, за что взяться ...
Берегите друг друга!
Virtson вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Олимпиада по С# Fire.id Общие вопросы .NET 1 22.06.2008 15:27
Литература по информатике пыхта4ог Свободное общение 1 18.11.2007 20:24
Олимпиада по программированию kpi-open Morion Свободное общение 4 20.06.2007 13:42
Помогите!Билеты по информатике... Mighty16 Свободное общение 2 09.06.2007 21:39