Язык программирования

3 082 задачивместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: ✓ успешные, ✗ неуспешные.
Напишите программу, которая выводит рыбку в виде рисука ASCII-арт (рисунок в виде строки 1х10 символов).
<@(/\/\)>< 
✓ 519✗ 1 020200лёгкаяВойти и решать
21480#21480
Персональный компьютер не будет функционировать, если отключить:

1. дисковод;
2. оперативную память;
3. мышь;
4. принтер;

21453#21453
Что такое информация?

1. отражение внешнего мира с помощью знаков и сигналов 
2. то, что мы видим и слышим
3. тексты, аудиоинформация и картинки
4.  файлы компьютерной системы
21449#21449
Свойство объекта, которое может быть представлено конкретным значением называется

1. числовое значение
2. характеристика
3. определение
4. параметр

Громозека любит печеньки, на которых записаны числа. Громозека будет есть печеньку, если на ней написано комфортное для него число. Громозека считает число комфортным, если оно является точной степенью двойки.  В руках у Громозеки сейчас печенька, на которой написано число N. Выведите слово YES, если Громозека съест эту печеньку и слово NO в противном случае.

Операцией возведения в степень пользоваться нельзя!
 

Входные данные

Вводится натуральное число N (N < 109).
 

Выходные данные

Выведите ответ на задачу.

 
Примеры
№ Входные данные Выходные данные
1 1 YES
2 4 YES
3 5 NO
 
Слон#20378

Требуется определить, бьет ли слон, стоящий на клетке с указанными координатами (номер строки и номер столбца), фигуру, стоящую на другой указанной клетке.

Входные данные

Вводятся четыре числа: координаты слона и координаты другой фигуры. Координаты - целые числа в интервале от 1 до 8.

Выходные данные

Требуется вывести слово YES, если слон способен побить фигуру за 1 ход, в противном случае вывести слово NO

Примеры
входные данные
1
1
5
5
выходные данные
YES

входные данные
3
2
2
2
выходные данные
NO

20247#20247
Даны координаты двух полей шахматной доски (координаты клетки - это 2 числа от 1 до 8: номер столбца и номер строки)
 
Одно ли цвета эти клетки на шахматной доске? Вывести в выходной файл сообщение YES, если они одного цвета, и NO иначе
 
Пример ввода:
1 1 2 2
 
Пример вывода:
YES
 
 
Пример ввода:
1 1 1 4
 
Пример вывода:
NO
 
20243#20243
Дано трехзначное число. Написать программу, которая определяет сколько раз входит в него цифра 4.

(никакие поясняющие записи в программе делать не нужно! библиотеку conio.h и команду getch() перед отправкой файла необходимо удалить!)

Пример входных и выходных данных
№ теста Входные данные Выходные данные
1 473 1
 

✓ 32✗ 122700средняяВойти и решать
Bit++#19886
 
Классический язык программирования в Битландии — Bit++. Этот язык очень необычный и сложный!
 
Особенность языка Bit++ состоит в том, что в нем ровно одна переменная, которая называется x. Также в этом языке есть две операции:
 
Операция ++ увеличивает значение, хранящееся в переменной x на 1.
Операция -- уменьшает значение, хранящееся в переменной x на 1.
Предложение в языке Bit++ — это последовательность, состоящая из ровно одной операции и ровно одной переменной x. Предложение записывается без пробелов, то есть может содержать только символы: «+», «-», «X». Выполнить предложение, значит выполнить операцию, которая содержится в предложении.
 
Программа на языке Bit++ — это последовательность предложений, каждое из которых требуется выполнить. Выполнить программу, значит выполнить все ее предложения.
 
Вам задана программа на языке Bit++. Перед выполнением программы в переменной x хранится значение 0. Выполните программу и выведите значение, которое будет храниться в переменной x после выполнения программы.
 
Входные данные
В первой строке записано единственное целое число n (1 ≤ n ≤ 150) — количество предложений в программе. В каждой из следующих n строк записано по предложению. Каждое предложение состоит из ровно одной операции (++ или --) и ровно одной переменной x (обозначается буквой «X»). Таким образом, не бывает пустых предложений. Операция и переменная могут быть записаны в любом порядке.
 
Выходные данные
Выведите единственное целое число — значение, которое будет храниться в переменной x после выполнения программы.
Однажды царь решил вознаградить одного из своих мудрецов за хорошую работу. Он привел его в прямоугольную комнату размром NxM, в каждой клетке которой лежало несколько килограммов золота. Царь разрешил мудрецу сделать обойти несколько клеток (переходя с клетки, где сейчас находится мудрец, в одну из четырех с ней соседних), и собрать все золото, которое попадется на его пути.
Мудрецу разрешено более одного раза проходить по одной и той же клетке. Золото с нее он берет при этом  только один раз - когда проходит по клетке в первый раз.

Вам дан маршрут мудреца. Требуется определить, сколько килограммов золота он собрал.

Входные данные
Входные данные содержат план комнаты и маршрут мудреца. Сначала записано количество строк N, затем - количество столбцов M (1<=N<=20,1<=M<=20).
Затем записано N строк по M чисел в каждой - количество килограммов золота, которое лежит в данной клетке (число от 0 до 50).
Далее записано число X - сколько клеток обошел мудрец. Далее записаны координаты этих клеток (координаты клетки - это два числа: первое определяет номер строки, второе - номер столбца, верхняя левая клетка на плане имеет координаты (1,1), правая нижняя - (N,M)). 
Число пройденных мудрецом клеток не превышает 10000.

Выходные данные
В выходной файл выведите количество килограммов золота, которое собрал мудрец.
 
Примеры
№ Входные данные Выходные данные
1
3 4
1 2 3 4
5 6 7 8
9 10 11 12
9
1 1
2 1
2 2
2 3
1 3
1 2
1 1
1 2
2 2
24

 
Однажды царь решил вознаградить одного из своих мудрецов за хорошую работу. Он привел его в прямоугольную комнату размром NxM, в каждой клетке которой лежало несколько килограммов золота. Царь разрешил мудрецу сделать обойти несколько клеток (переходя с клетки, где сейчас находится мудрец, в одну из четырех с ней соседних), и собрать все золото, которое попадется на его пути.
 
Вам дан маршрут мудреца. Требуется определить, сколько килограммов золота он собрал.
 
Входные данные
Входные данные содержат план комнаты и маршрут мудреца. Сначала записано количество строк N, затем - количество столбцов M (1<=N<=20,1<=M<=20).
Затем записано N строк по M чисел в каждой - количество килограммов золота, которое лежит в данной клетке (число от 0 до 50).
Далее записано число X - сколько клеток обошел мудрец. Далее записаны координаты этих клеток (координаты клетки - это два числа: первое определяет номер строки, второе - номер столбца, верхняя левая клетка на плане имеет координаты (1,1), правая нижняя - (N,M)).
Гарантируется, что мудрец не проходил по одной и той же клетке дважды.
 
Выходные данные
В выходной файл выведите количество килограммов золота, которое собрал мудрец.
 
Примеры
№ Входные данные Выходные данные
1
3 4
1 2 3 4
5 6 7 8
9 10 11 12
5
1 1
2 1
2 2
2 3
1 3
22
 
В квадратной таблице NxN подсчитать суммы чисел, стоящих на диагоналях.
 
Входные данные
В первой строке содержится число N (1<=N<=100), а затем матрица NxN.  Элементы матрицы - числа, не превосходящие по модулю 32767.
 
Выходные данные
Вывелите сначала сумму чисел на главной,  а затем, через один пробел, - на побочной диагонали.
 
Примеры
№ Входные данные Выходные данные
1
3
1 2 3
4 5 6
10 9 8
14 18
 
ГАИ#18782
ГАИ
 
Вдоль шоссе в точках X1,X2,...,XN расположены посты ГАИ. 
В точке X произошло мелкое ДТП (дорожно-транспортное происшествие).
Требуется определить, какой из постов ГАИ расположен ближе всего
к этой точке, чтобы с него послать к месту происшествия наряд милиции.
 
Входные данные
Во входном файле записано сначала число N - количество пунктов ГАИ. (1<=N<=100)
Далее следуют координаты расположения постов ГАИ на прямом шоссе
(целые числа от -10000 до 10000). Далее идет координата точки,
в которой произошло ДТМ (целое число от -10000 до 10000).
 
Выходные данные
В выходной файл требуется вывести одно число - номер поста ГАИ,
с которого нужно послать наряд к месту ДТП. Если несколько постов
ГАИ находятся на одинаковом расстоянии от точки ДТП, выведите любой из них.
 
Пример входного файла
5
10 2 8 -7 3
7
 
Пример выходного файла
3
Количество операций
 
Дана программа сортировки (p141.pas). Требуется узнать, сколько раз
при сортировке конкретного массива с помощью этой программы
выполняется операция сравнения двух элементов массива (строка 25 программы).
 
Входные данные
Задано сначала число N (1≤N≤100), а затем N целых чисел, по модулю не превышающих 1000.
 
Выходные данные
Ваша программа должна печатать одно число - сколько
раз в процессе сортировки этого массива программой p141.pas выполнится
команда сравнения двух элементов массива.
 
Пример входного файла
5
3 1 2 4 2
 
Пример выходного файла
10

Текст программы p141.pas
const nmax=100;

var a:array[1..nmax] of integer;
    n:integer;
    i,j,g:integer;

    f1,f2:text;

begin
assign(f1,'input.txt');
reset(f1);
assign(f2,'output.txt');
rewrite(f2);
                                  {Чтение входных данных}
read(f1,n);
for i:=1 to n do read(f1,a[i]);
                                  {Сортировка массива}

for i:=1 to n do begin            {Подбираем число на i-ое место}

  g:=i;                           {Считаем, что самое маленькое число,
                                   которое нам встретилось, стоит на месте i}

  for j:=i+1 to n do              {Перебираем все числа с i+1 до конца массива}
    if a[j]<a[g] then g:=j;       {Если нашли число, которое меньше,
                                   чем то, что уже найдено, запоминаем его}

                                  {Меняем местами числа, стоящие на i-ом и
                                   на g-ом местах }
                                  {Если a[i]=x, a[g]=y, то после выполнения
                                   команды: }
  if i<>g then begin
    a[i]:=a[i]+a[g];                {a[i]=x+y, a[g]=y}
    a[g]:=a[i]-a[g];                {a[i]=x+y, a[g]=(x+y)-y=x}
    a[i]:=a[i]-a[g];                {a[i]=(x+y)-x=y}
                                  {То есть после этого a[i]=y, a[g]=x
                                   обмен значений произошел}
    end;

  end;

                                  {Выводим результат}
for i:=1 to n do
  write(f2,a[i],' ');
close(f1);
close(f2);
end.

Троллейбусы одного маршрута проходят через остановку каждые k (1<=k<=500) минут. Известны времена прихода пассажиров на эту остановку. Если пассажир приходит на остановку в момент прихода троллейбуса, то он успевает уехать на нем.
 
Напишите программу, которая бы определяла, во сколько должен пройти первый троллейбус (это время от 0 до k-1), чтобы:
1) Суммарное время ожидания троллейбуса для всех пассажиров было минимально.
2) Максимальное из времен ожидания троллейбуса было минимально.
 
Входные данные
В строке записано сначала число k, затем - число N (0<=N<=100000). Затем идет N чисел, задающих времена прихода пассажиров 
на остановку. Каждое из этих чисел - целое от 0 до 100000.
 
Выходные данные
Запишите два числа, являющиеся ответами на первый и второй вопросы задачи соответственно. 
Если решений несколько, выведите любое из них.

Примеры
№ Входные данные Выходные данные
1
100 5
0 210 99 551 99
10
51
 
 
В начальный момент в i-ом элементе массива записано число i (всего N элементов). 
Каждую секунду числа сдвигаются в следующую ячейку (из i-ой в i+1-ую), а из N-ой - в первую. 
Напечатать состояние массива через T секунд.


Входные данные
Программа получает на вход строку, в которой записаны два числа - N и T (1<=N<=100) и T (0<=T<=30000).

Выходные данные
Выведите N чисел - состояние массива через T секунд.
 
 
Примеры
№ Входные данные Выходные данные
1 5 3
3 4 5 1 2
 
 
Дан массив. Требуется вставить в него на место номер B элемент, равный C,
сдвинув все последующие элементы (включая элемент, стоящий на B-ом месте) 
вправо.
 
Входные данные
Во входном файле записано сначала число N - количество элементов массива
(2<=N<=100), затем N чисел из диапазона Integer - элементы массива,
затем число B (1<=B<=N) и число C (из диапазона Integer).
 
Выходные данные
В выходной файл выведите N+1 число - элементы массива с вставленным элементом.
 
Примечание
Вы должны вставить элемент непосредственно в массив, а не сделать
вид при выводе данных, что у вас появился такой элемент. Также вы не 
должны для этого заводить в программе дополнительный массив.
 
 
Пример входного файла
5
1 3 5 6 7
2 10
 
Пример выходного файла
1 10 3 5 6 7
 
Поделиться
Класснуть