Добавить материал и получить бесплатное свидетельство о публикации в СМИ
Эл. №ФС77-60625 от 20.01.2015

Опубликуйте свой материал в официальном Печатном сборнике методических разработок проекта «Инфоурок»

(с присвоением ISBN)

Выберите любой материал на Вашем учительском сайте или загрузите новый

Оформите заявку на публикацию в сборник(займет не более 3 минут)

+

Получите свой экземпляр сборника и свидетельство о публикации в нем

Инфоурок / Информатика / Статьи / Статья на тему "Подготовка к олимпиадам по информатике:Задачи на ввод и вывод"
ВНИМАНИЮ ВСЕХ УЧИТЕЛЕЙ: согласно Федеральному закону № 313-ФЗ все педагоги должны пройти обучение навыкам оказания первой помощи.

Дистанционный курс "Оказание первой помощи детям и взрослым" от проекта "Инфоурок" даёт Вам возможность привести свои знания в соответствие с требованиями закона и получить удостоверение о повышении квалификации установленного образца (180 часов). Начало обучения новой группы: 24 мая.

Подать заявку на курс
  • Информатика

Статья на тему "Подготовка к олимпиадам по информатике:Задачи на ввод и вывод"

библиотека
материалов

Тема: Готовимся к олимпиадам: Задачи на ввод-вывод и арифметические операции.


Содержание

Задача A. Гипотенуза


Задача B. Следующее и предыдущее


Задача C. Дележ яблок – 1


Задача D. Дележ яблок – 2


Задача E. МКАД


Задача F. Последняя цифра


Задача G. Число десятков двузначного числа


Задача H. Число десятков


Задача I. Сумма цифр


Задача J. Следующее четное


Задача K. Электронные часы – 1


Задача L. Электронные часы – 2


Задача M. Обмен значений


Задача N. Конец уроков


Задача O. Стоимость покупки


Задача P. Разность времен


Задача Q. Автопробег


Задача R. Дележ яблок – 3


Задача S. Улитка


Задача T. Симметричное число


Задача U. Проверьте делимость


Задача V. Максимум


3. Решения задач



Введение

В данной работе дается задачи для подготовки к олимпиадам для начинающих и решения каждой задачи. Данная работа полезна для школьников, желающих углубленно изучать программирования. А также для учителей информатики и студентов технических и педагогических ВУЗов.


2. Условия задач


Задача A. Гипотенуза

Дано два числа a и b. Выведите гипотенузу треугольника с заданными катетами.


Примеры


3

4

5.0



Задача B. Следующее и предыдущее

Напишите программу, которая считывает целое число и выводит текст, аналогичный приведенному в примере. Пробелы, знаки препинания, заглавные и строчные буквы важны!


Пример


The previous number for the number 179 is 178.

The next number for the number 179 is 180.


Задача C. Дележ яблок – 1

N школьников делят K яблок поровну, неделящийся остаток остается в корзинке. Сколько яблок

достанется каждому школьнику? Программа получает на вход числа N и K и должна вывести искомое количество яблок.


Пример


3

14

4


Задача D. Дележ яблок – 2

N школьников делят K яблок поровну, неделящийся остаток остается в корзинке. Сколько яблок останется в корзинке? Программа получает на вход числа N и K и должна вывести искомое количество яблок.


Пример


3

14

2


Задача E. МКАД

Длина Московской кольцевой автомобильной дороги —109 километров. Байкер Вася стартует с нулевого километра МКАД и едет со скоростью v километров в час. На какой отметке он остановится через t часов?

Программа получает на вход значения v и t. Если v>0, то Вася движется в положительном направлении по МКАД, если же значение v<0, то в отрицательном.

Программа должна вывести целое число от 0 до 108 — номер отметки, на которой остановится Вася.


Примеры


60

2

11


-1

1

108



Задача F. Последняя цифра

Дано натуральное число. Выведите его последнюю цифру.


Пример


Задача G. Число десятков двузначного числа

Дано двузначное число. Найдите число десятков в нем.


Пример


Задача H. Число десятков

Дано натуральное число. Найдите число десятков в его десятичной записи (то есть вторую справа цифру его десятичной записи).


Пример


Задача I. Сумма цифр

Дано трехзначное число. Найдите сумму его цифр.


Пример



Задача J. Следующее четное

Дано целое число n. Выведите следующее за ним четное число. При решении этой задачи нельзя использовать условную инструкцию if и циклы.


Пример


Задача K. Электронные часы – 1

Дано число n. С начала суток прошло n минут. Определите, сколько часов и минут будут показывать электронные часы в этот момент. Программа должна вывести два числа: количество часов (от 0 до 23) и количество минут (от 0 до 59). Учтите, что число n может быть больше, чем количество минут в сутках.


Пример


Задача L. Электронные часы – 2

Электронные часы показывают время в формате h:mm:ss, то есть сначала записывается количество часов, потом обязательно двузначное количество минут, затем обязательно двузначное количество секунд. Количество минут и секунд при необходимости дополняются до двузначного числа нулями.

С начала суток прошло n секунд. Выведите, что покажут часы.


Пример


129700

12:01:40


Задача M. Обмен значений

Напишите программу, которая считывает значения двух переменных a и b, затем меняет их значения местами (то есть в переменной a должно быть записано то, что раньше хранилось в b, а в переменной b записано то, что раньше хранилось в a). Затем выведите значения переменных.


Пример


3

7

7 3


Примечание. Решением задачи не является такой код:

a = input ()

b = input ()

print (b, a)

То есть ваша программа должна иметь примерно такой вид:

a = input ()

b = input ()

# Допишите сюда

# свой код

print (a, b)


Задача N. Конец уроков

В некоторой школе занятия начинаются в 9:00. Продолжительность урока — 45 минут, после 1-го, 3-го, 5-го и т.д. уроков перемена 5 минут, а после 2-го, 4-го, 6-го и т.д. — 15 минут.

Дан номер урока (число от 1 до 10). Определите, когда заканчивается указанный урок. Выведите два целых числа: время окончания урока в часах и минутах. При решении этой задачи нельзя пользоваться циклами и условными инструкциями.


Пример


Задача O. Стоимость покупки

Пирожок в столовой стоит a рублей и b копеек. Определите, сколько рублей и копеек нужно заплатить за n пирожков. Программа получает на вход три числа: a, b, n и должна вывести два числа: стоимость покупки в рублях и копейках.


Пример


10

15

2

20 30

2

50

4

10 0


Задача P. Разность времен

Даны значения двух моментов времени, принадлежащих одним и тем же суткам: часы, минуты и секунды для каждого из моментов времени. Известно, что второй момент времени наступил не раньше первого. Определите, сколько секунд прошло между двумя моментами времени. Программа на вход получает три целых числа — часы, минуты, секунды, задающие первый момент времени и три целых числа, задающих второй момент времени. Выведите число секунд между этими моментами времени.


Пример


1

1

1

2

2

2

3661

1

2

30

1

3

20

50


Задача Q. Автопробег

За день машина проезжает n километров. Сколько дней нужно, чтобы проехать маршрут длиной m километров?

Программа получает на вход числа n и m.

При решении этой задачи нельзя пользоваться условной инструкцией if и циклами.


Примеры


700

750

2


700

2100

3


Задача R. Дележ яблок – 3

n школьников делят k яблок “поровну”, то есть так, чтобы количество яблок, доставшихся любым двум школьникам, отличалось бы не более, чем на 1.

Программа получает на вход числа n и k и должна вывести количество школьников, которым достанется яблок меньше, чем некоторым из их товарищей.

При решении этой задачи нельзя пользоваться условной инструкцией if и циклами.


Пример


7

30

5

7

28

0


Задача S. Улитка

Улитка ползёт по вертикальному шесту высотой h метров, поднимаясь за день на a метров, а за ночь, спускаясь на b метров. На какой день улитка доползёт до вершины шеста?

Программа получает на вход натуральные числа h, a, b и должна вывести одно натуральное число. Гарантируется, что a>b.

При решении этой задачи нельзя пользоваться условной инструкцией if и циклами.


Примеры


10

3

2

8


Задача T. Симметричное число

Дано четырехзначное число. Определите, является ли его десятичная запись симметричной. Если число симметричное, то выведите 1, иначе выведите любое другое целое число. Число может иметь меньше четырех знаков, тогда нужно считать, что его десятичная запись дополняется слева незначащими нулями.

При решении этой задачи нельзя пользоваться условной инструкцией if и циклами


Пример


Задача U. Проверьте делимость

Даны два натуральных числа n и m. Если одно из них делится на другое нацело, выведите 1, иначе выведите любое другое целое число.

При решении этой задачи нельзя пользоваться условной инструкцией if и циклами.


Пример


2

8

1

8

2

1

3

5

7


Задача V. Максимум

Напишите программу, которая считывает два целых числа a и b и выводит наибольшее значение из них. Числа — целые от 1 до 1000.

При решении задачи можно пользоваться только целочисленными арифметическими операциями +, -, *, //, %, =. Нельзя пользоваться нелинейными конструкциями: ветвлениями, циклами, функциями вычисления модуля, извлечения квадратного корня.


Примеры


8

5

8


5

8

8


5

5

5



3. Решение задач.


Задача A. Гипотенуза

var a,b:real;

begin

read(a,b);

write(sqrt(a*a+b*b));

end.


Задача B. Следующее и предыдущее

var a:integer;

begin

read(a);

writeln('The next number for the number ',a,' is ',a+1,'.');

writeln('The previous number for the number ',a,' is ',a-1,'.');

end.


Задача C. Дележ яблок – 1

var n,k:integer;

begin

read(n,k);

write(k div n);

end.


Задача D. Дележ яблок – 2

var n,k:integer;

begin

read(n,k);

write(k mod n);

end.


Задача E. МКАД

var v,t:integer;

begin

read(v,t);

write(((abs(v*t) div 109+1)*109+v*t) mod 109);

end.


Задача F. Последняя цифра

var v:longint;

begin

read(v);

write(v mod 10);

end.


Задача G. Число десятков двузначного числа

var v:longint;

begin

read(v);

write(v div 10);

end.


Задача H. Число десятков

var v:longint;

begin

read(v);

write(v div 10 mod 10);

end.


Задача I. Сумма цифр

var v:longint;

begin

read(v);

write(v div 10 div 10+v div 10 mod 10+v mod 10);

end.


Задача J. Следующее четное

var n:longint;

begin

read(n);

write((n div 2+1)*2);

end.


Задача K. Электронные часы – 1

var n,h,m:longint;

begin

read(n);

h:=n div 60 mod 24;

m:=n mod 60;

write(h,' ',m);

end.


Задача L. Электронные часы – 2

var n,h,m,s:longint;

begin

read(n);

h:=n div 3600 mod 24;

m:=(n mod 3600) div 60;

s:=(n mod 3600) mod 60;

write(h,':',m div 10,m mod 10,':',s div 10,s mod 10);

end.


Задача M. Обмен значений

var a,b:longint;

begin

read(a,b);

a:=a+b;

b:=a-b;

a:=a-b;

write(a,' ',b);

end.

Задача N. Конец уроков

var m,n,c0,m0,c:integer;

begin

read(n);

c0:=9; m0:=0;

m0:=m0+c0*60;

m:=45*n+(n div 2)*5+((n-1) div 2)*15;

m:=m+m0;

c:=m div 60;

m:=m mod 60;

write(c,' ',m)

end.


Задача O. Стоимость покупки

var a,b,n:longint;

begin

read(a,b,n);

write(a*n+b*n div 100,' ',b*n mod 100);

end.


Задача P. Разность времен

var h1,m1,s1,h2,m2,s2:longint;

begin

read(h1,m1,s1,h2,m2,s2);

write(h2*3600+m2*60+s2-h1*3600-m1*60-s1);

end.


Задача Q. Автопробег

var m, n, d : longint;

begin

read(n,m);

d:=(m-1) div n+1;

write(d);

end.


Задача R. Дележ яблок – 3

var n,k:longint;

begin

read(n,k);

write((n-k mod n)mod n);

end.


Задача S. Улитка

var h, a, b, shag, h0:longint;

begin

read(h,a,b);

h0:=h-a;

shag:=a-b;

write(1 + h0 div shag + (h0 mod shag + shag - 1) div shag);

end.


Задача T. Симметричное число

var n,p1,p2,z1,z2,z3,z4,s:integer;

begin

read(n);

p1:=n div 100;

p2:=n mod 100;

z1:=p1 div 10;

z2:=p1 mod 10;

z3:=p2 div 10;

z4:=p2 mod 10;

s:=z4*1000+z3*100+z2*10+z1;

write(n-s+1);

end.


Задача U. Проверьте делимость

var n,m:longint;

begin

read(n,m);

write((n mod m)*(m mod n)+1);

end.


Задача V. Максимум

var a,b:longint;

begin

read(a,b);

write((((a+b) div b-1)*a+((a+b) div a-1)*b) div(a div b+b div a));

end.


5. Список используемой литературы

13

Автор
Дата добавления 31.05.2016
Раздел Информатика
Подраздел Статьи
Просмотров1152
Номер материала ДБ-104728
Получить свидетельство о публикации

Выберите специальность, которую Вы хотите получить:

Обучение проходит дистанционно на сайте проекта "Инфоурок".
По итогам обучения слушателям выдаются печатные дипломы установленного образца.

ПЕРЕЙТИ В КАТАЛОГ КУРСОВ

Похожие материалы

Включите уведомления прямо сейчас и мы сразу сообщим Вам о важных новостях. Не волнуйтесь, мы будем отправлять только самое главное.
Специальное предложение
Вверх