Примеры заданий по программированию. Олимпиада 2008

advertisement
Оглавление
11 класс......................................................................................................................................................... 2
Третий тур ................................................................................................................................................ 2
Задача №7 Первый вариант ............................................................................................................... 2
Задача №7 Второй вариант ................................................................................................................ 3
Задача №8 Первый вариант ............................................................................................................... 4
Задача №8 Второй вариант ................................................................................................................ 5
Задача №8 Первый вариант ............................................................................................................... 6
Задача №9 Второй вариант ................................................................................................................ 6
Первый вариант Задача №10 ............................................................................................................. 7
Второй вариант Задача №10 .............................................................................................................. 8
День первый ............................................................................................................................................ 9
Задача №11 .......................................................................................................................................... 9
Первый вариант ................................................................................................................................... 9
Второй вариант ..................................................................................................................................10
Третий вариант ..................................................................................................................................11
Задача №12 ........................................................................................................................................12
Вариант первый .................................................................................................................................12
Вариант второй ..................................................................................................................................13
Третий вариант ..................................................................................................................................14
День второй ...........................................................................................................................................15
Задача №11 ........................................................................................................................................15
Вариант первый .................................................................................................................................15
Второй вариант ..................................................................................................................................16
Третий вариант ..................................................................................................................................17
Задача № 12 .......................................................................................................................................18
Первый вариант .................................................................................................................................18
Второй вариант ..................................................................................................................................19
Третий вариант ..................................................................................................................................19
9 класс.........................................................................................................................................................20
Задача №19 ............................................................................................................................................20
Первый вариант .................................................................................................................................20
Второй вариант ..................................................................................................................................21
Задача №20 ............................................................................................................................................22
Первый вариант .................................................................................................................................22
Второй вариант ..................................................................................................................................22
11 класс
Третий тур
Задача №7 Первый вариант
На плоскости задано десять точек. Найдите квадрат максимальной площади с вершинами
в заданных точках. Программа должна считать выходые данные из файла input.txt и
вывести результат в файл output.txt
Формат входного файла.
Входной файл содержит 10 строк. В каждой строке записано по два числа — координаты
точек. Все координаты целые и не превышают по модулю 100.
Формат выходного файла.
Выведите в выходной файл одно число: площадь найденного квадрата. Если таких
квадратов нет, выведите число -1.
Пример
input.txt output.txt
00
30
10 0
03
33
10 3
0 10
88
3 10
10 10
100
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
Задача №7 Второй вариант
На плоскости задано десять точек. Найдите квадрат минимальной площади с вершинами в
заданных точках. Программа должна считать выходые данные из файла input.txt и
вывести результат в файл output.txt
Формат входного файла.
Входной файл содержит 10 строк. В каждой строке записано по два числа — координаты
точек. Все координаты целые и не превышают по модулю 100.
Формат выходного файла.
Выведите в выходной файл одно числа: площадь найденного квадрата. Если таких
квадратов нет, выведите число -1.
Пример
input.txt output.txt
00
30
10 0
03
33
9
10 3
0 10
88
3 10
10 10
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
Задача №8 Первый вариант
Число Армстронга — такое число из k цифр, для которого сумма k-х степеней его цифр
равна самому числу, например: 153=13+53+33. Надите 5 наибольших чисел Армстронга,
состоящих не более чем из n цифр. Программа должна считать выходые данные из файла
input.txt и вывести результат в файл output.txt
Формат входного файла.
Входной файл содержит целое число n (1≤n≤5).
Формат выходного файла.
Выведите в выходной файл 5 наибольших чисел Армстронга в порядке возрастания.
Пример
input.txt
output.txt
4
371 407 1634 8208 9474
1
56789
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
Задача №8 Второй вариант
Число Цукермана — такое натуральное число, которое делится на произведение своих
цифр, например: 175 делится на 1⋅7⋅5=35. Надите 5 наибольших чисел Цукермана,
состоящих не более чем из n цифр. Программа должна считать выходые данные из файла
input.txt и вывести результат в файл output.txt
Формат входного файла.
Входной файл содержит целое число n (1≤n≤5).
Формат выходного файла.
Выведите в выходной файл 5 наибольших чисел Цукермана в порядке возрастания.
Пример
input.txt
output.txt
4
7119 8112 8832 9315 9612
1
56789
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
Задача №8 Первый вариант
Дан целочисленный массив из 10 элементов. Найдите все элементы массива, значения
которых больше среднеарифметического значения всех элементов массива. Выведите
искомые элементы в порядке, обратном порядку следования элементов в исходном
массиве. Программа должна считать выходые данные из файла input.txt и вывести
результат в файл output.txt
Формат входного файла.
Входной файл содержит 10 целых чисел. Все числа не превышают по модулю 100.
Формат выходного файла.
Выведите в выходной файл ответ на задачу.
Пример
input.txt
output.txt
1 3 5 7 9 2 4 6 8 10 10 8 6 9 7
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
Задача №9 Второй вариант
Дан целочисленный массив из 10 элементов. Найдите все элементы массива, значения
которых меньше среднеарифметического значения всех элементов массива. Выведите
искомые элементы в порядке, обратном порядку следования элементов в исходном
массиве. Программа должна считать выходые данные из файла input.txt и вывести
результат в файл output.txt
Формат входного файла.
Входной файл содержит 10 целых чисел. Все числа не превышают по модулю 100.
Формат выходного файла.
Выведите в выходной файл ответ на задачу.
Пример
input.txt
output.txt
1 3 5 7 9 2 4 6 8 10 4 2 5 3 1
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
Первый вариант Задача №10
На вход программе подается текст, состоящий не более чем из 200 символов. Текст был
зашифрован следующим образом. Сначала определили количество букв в самом коротком
слове, обозначив полученное число n (словом называется непрерывная
последовательность английских букв, слова друг от друга отделяются любыми другими
символами). Затем заменили каждую английскую букву в тексте на следующую за ней n-й
по счету в алфавите (алфавит считается циклическим, за буквой Z следует буква А),
оставив другие символы неизменными. Строчные буквы при этом остались строчными, а
прописные — прописными. Напишите программу, которая будет выводить
расшифрованный текст. Программа должна считать выходые данные из файла input.txt и
вывести результат в файл output.txt
Формат входного файла.
Входной файл содержит одну строку с текстом. Длина строки не превышает 200
символов.
Формат выходного файла.
Выведите в выходной файл ответ расшифрованный текст.
Пример
input.txt
output.txt
Jgnnq yqtnf! Vjku oguucig ku xgta ugetgv. Hello world! This message is very secret.
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
Второй вариант Задача №10
На вход программе подается текст, состоящий не более чем из 200 символов. Текст был
зашифрован следующим образом. Сначала определили количество букв в самом коротком
слове, обозначив полученное число n (словом называется непрерывная
последовательность английских букв, слова друг от друга отделяются любыми другими
символами). Затем заменили каждую английскую букву в тексте на букву, стоящую в
алфавите на n позиций раньше (алфавит считается циклическим, за буквой Z следует
буква А), оставив другие символы неизменными. Строчные буквы при этом остались
строчными, а прописные — прописными. Напишите программу, которая будет выводить
расшифрованный текст. Программа должна считать выходые данные из файла input.txt и
вывести результат в файл output.txt
Формат входного файла.
Входной файл содержит одну строку с текстом. Длина строки не превышает 200
символов.
Формат выходного файла.
Выведите в выходной файл ответ расшифрованный текст.
Пример
input.txt
output.txt
Fcjjm umpjb! Rfgq kcqqyec gq tcpw qcapcr. Hello world! This message is very secret.
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
День первый
Задача №11
Первый вариант
Заполните матрицу n×n числами от 1 до n2 по спирали, по часовой стрелке, начиная от
единицы в левом верхнем углу. Полученную матрицу выведите построчно, разделяя числа
пробелами. Программа должна считать число n из файла input.txt и вывести результат в
файл output.txt
.
Формат входного файла.
Входной файл содержит одно целое число n (1 ≤ n ≤ 10).
Формат выходного файла.
Выведите в выходной файл n строк по n чисел — полученную матрицу.
Пример
input.txt output.txt
12345
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
5
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
Второй вариант
Заполните матрицу n×n числами от 1 до n2 по спирали, против часовой стрелки, начиная
от единицы в левом верхнем углу. Полученную матрицу выведите построчно, разделяя
числа пробелами. Программа должна считать число n из файла input.txt и вывести
результат в файл output.txt
.
Формат входного файла.
Входной файл содержит одно целое число n (1 ≤ n ≤ 10).
Формат выходного файла.
Выведите в выходной файл n строк по n чисел — полученную матрицу.
Пример
input.txt output.txt
5
1 16 15 14 13
2 17 24 23 12
3 18 25 22 11
4 19 20 21 10
56789
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
Третий вариант
Заполните матрицу n×n числами от n2 до 1 по спирали, по часовой стрелке, начиная от n2
в левом верхнем углу. Полученную матрицу выведите построчно, разделяя числа
пробелами. Программа должна считать число n из файла input.txt и вывести результат в
файл output.txt.
Формат входного файла.
Входной файл содержит одно целое число n (1 ≤ n ≤ 10).
Формат выходного файла.
Выведите в выходной файл n строк по n чисел — полученную матрицу.
Пример
input.txt
5
output.txt
25 24 23 22 21
10 9 8 7 20
11 2 1 6 19
12 3 4 5 18
13 14 15 16 17
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
Задача №12
Вариант первый
Найдите сумму n первых чисел Фибоначчи. Напомним, что числа Фибоначчи задаются
следующим правилом. f1 = 1, f2 = 1, fk = fk - 1 + fk - 2, для k > 2. Программа должна считать
число n из файла input.txt и вывести результат в файл output.txt.
Формат входного файла.
Входной файл содержит одно целое число n (1 ≤ n ≤ 20).
Формат выходного файла.
Выведите в выходной файл искомую сумму.
Пример
input.txt output.txt
5
12
10
143
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
Вариант второй
Найдите количество чисел Фибоначчи, не превышающих n. Напомним, что числа
Фибоначчи задаются следующим правилом. f1 = 1, f2 = 1, fk = fk - 1 + fk - 2, для k > 2.
Программа должна считать число n из файла input.txt и вывести результат в файл
output.txt.
Формат входного файла.
Входной файл содержит одно целое число n (1 ≤ n ≤ 10000).
Формат выходного файла.
Выведите в выходной файл искомое количество.
Пример
input.txt output.txt
5
5
30
8
2000
17
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
Третий вариант
Найдите максимальное число Фибоначчи, не превышающее n. Напомним, что числа
Фибоначчи задаются следующим правилом. f1 = 1, f2 = 1, fk = fk - 1 + fk - 2, для k > 2.
Программа должна считать число n из файла input.txt и вывести результат в файл
output.txt.
Формат входного файла.
Входной файл содержит одно целое число n (1 ≤ n ≤ 10000).
Формат выходного файла.
Выведите в выходной файл искомое число.
Пример
input.txt output.txt
5
5
30
21
2000
1597
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
День второй
Задача №11
Вариант первый
Заполните матрицу n×n следующим образом. Элементам на периметре (в первой и
последней строке, в первом и последнем столбце) присваивается значение 1, элементам на
периметре оставшейся незаполненной части — значение 2, и т.д. Полученную матрицу
выведите построчно, разделяя числа пробелами. Программа должна считать число n из
файла input.txt и вывести результат в файл output.txt
.
Формат входного файла.
Входной файл содержит одно целое число n (1 ≤ n ≤ 10).
Формат выходного файла.
Выведите в выходной файл n строк по n чисел — полученную матрицу.
Пример
input.txt output.txt
5
11111
12221
12321
12221
11111
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
Второй вариант
Заполните матрицу n×n следующим образом. Угловым элементам присваивается значение
1, элементам, соседним с единицами — значение 2, элементам, соседним с двойками —
значение 3, и т.д. Полученную матрицу выведите построчно, разделяя числа пробелами.
Программа должна считать число n из файла input.txt и вывести результат в файл
output.txt
.
Формат входного файла.
Входной файл содержит одно целое число n (1 ≤ n ≤ 10).
Формат выходного файла.
Выведите в выходной файл n строк по n чисел — полученную матрицу.
Пример
input.txt output.txt
12321
23432
34543
23432
12321
5
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
#include <stdio.h>
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
Третий вариант
Заполните матрицу n×n следующим образом. Элементам, стоящим на главной и побочной
диагоналях, присваивается значение 1, элементам, соседним с единицами — значение 2,
элементам, соседним с двойками — значение 3, и т.д. Полученную матрицу выведите
построчно, разделяя числа пробелами. Программа должна считать число n из файла
input.txt и вывести результат в файл output.txt.
Формат входного файла.
Входной файл содержит одно целое число n (1 ≤ n ≤ 10).
Формат выходного файла.
Выведите в выходной файл n строк по n чисел — полученную матрицу.
Пример
input.txt output.txt
5
12321
21212
32123
21212
12321
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
Задача № 12
Первый вариант
Найдите сумму факториалов чисел от 1 до n. Напомним, что факториал числа k равен k! =
1 ⋅ 2 ⋅ ... ⋅ k. Программа должна считать число n из файла input.txt и вывести результат в
файл output.txt
.
Формат входного файла.
Входной файл содержит одно целое число n (1 ≤ n ≤ 10).
Формат выходного файла.
Выведите в выходной файл искомую сумму.
Пример
input.txt output.txt
5
153
10
4037913
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
{...}
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
//...
close(input);
close(output);
end.
return 0;
}
Второй вариант
Найдите сумму квадратов чисел от 1 до n. Программа должна считать число n из файла
input.txt и вывести результат в файл output.txt
.
Формат входного файла.
Входной файл содержит одно целое число n (1 ≤ n ≤ 20).
Формат выходного файла.
Выведите в выходной файл искомую сумму.
Пример
input.txt output.txt
5
55
10
385
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
Третий вариант
return 0;
}
Найдите максимальное число, факториал которого не превышает n. Напомним, что
факториал числа k равен k! = 1 ⋅ 2 ⋅ ... ⋅ k. Программа должна считать число n из файла
input.txt и вывести результат в файл output.txt.
Формат входного файла.
Входной файл содержит одно целое число n (1 ≤ n ≤ 1000000).
Формат выходного файла.
Выведите в выходной файл искомое число.
Пример
input.txt output.txt
1
1
150
5
1. Программа должна завершаться с кодом 0. Иначе Вы получите ошибку "Runtime
Error". Для этого в C и C++ нужно сделать так, чтобы функция int main()
возвращала 0.
2. Нельзя обрабатывать ввод с клавиатуры или ожидать нажатия клавиши. В
противном случае Вы получите ошибку, например “Security Violation”.
3. Не используйте абсолютные пути при работе с файлами. При запуске Вашей
программы эти файлы будут находиться в текущем каталоге.
Пример программы на языке Pascal/Delphi
Пример программы на языке C
begin
assign(input, 'input.txt');
assign(output, 'output.txt');
reset(input);
rewrite(output);
#include <stdio.h>
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
{...}
//...
close(input);
close(output);
end.
return 0;
}
9 класс
Задача №19
Первый вариант
Задан массиы целых чисел. Найдите сумму элементов, стоящих на четных местах и
максимум среди элементов, стоящих на нечетных местах.
Программа должна считать входные данные из файла input.txt и вывести результат в файл
output.txt.
Формат входного файла.
Первая строка входного файла содержит целое число n — количество элементов в
массиве, вторая строка содержит n (2 ≤ n ≤ 20) целых чисел — элементы массива. Все
элементы от 1 до 100.
Формат выходного файла.
Выведите в выходной файл два числа — ответ на первый и второй вопрос задачи
соответственно.
Пример
input.txt output.txt
5
65
12345
2
5 10
10 5
Второй вариант
Задан массиы целых чисел. Найдите сумму элементов, стоящих на нечетных местах и
максимум среди элементов, стоящих на четных местах.
Программа должна считать входные данные из файла input.txt и вывести результат в файл
output.txt.
Формат входного файла.
Первая строка входного файла содержит целое число n — количество элементов в
массиве, вторая строка содержит n (2 ≤ n ≤ 20) целых чисел — элементы массива. Все
элементы от 1 до 100.
Формат выходного файла.
Выведите в выходной файл два числа — ответ на первый и второй вопрос задачи
соответственно.
Пример
input.txt output.txt
5
94
12345
2
5 10
5 10
Задача №20
Первый вариант
Найдите количество четных цифр в десятичной записи числа n.
Программа должна считать число n из файла input.txt и вывести результат в файл
output.txt.
Формат входного файла.
Входной файл содержит одно целое число n (1 ≤ n ≤ 10000).
Формат выходного файла.
Выведите в выходной файл искомое количество.
Пример
input.txt output.txt
1243
2
1357
0
Второй вариант
Найдите количество нечетных цифр в десятичной записи числа n.
Программа должна считать число n из файла input.txt и вывести результат в файл
output.txt.
Формат входного файла.
Входной файл содержит одно целое число n (1 ≤ n ≤ 10000).
Формат выходного файла.
Выведите в выходной файл искомое количество.
Пример
input.txt output.txt
1243
2
1357
4
Download