НУЖНА Наказанный город
Контрольная работа
макс.
Дедлайн: 24 дек. 12:18
Ограничение времени 1 секунда
Ограничение памяти 64Mb
Ввод стандартный ввод или input.txt
Вывод стандартный вывод или output.txt
Нильс взобрался на спину гусыни, и она полетела над морем так низко, что крылья её едва не задевали воду.
Крепко ухватившись за шею Акки, Нильс свесился вниз.
Сквозь прозрачную зеленоватую воду глубоко-глубоко в море он увидел город. Тот самый город, по которому он только что бегал. Вон часовая башня, вон ворота. Стражники по-прежнему ходят по стене с копьями в руках, на улицах по-прежнему толпится народ.
Напишите программу, которая выберет наиболее точные описания заколдованного города, преобразует их в числа и выведет все значения из диапазона с определенным шагом.
Формат ввода
Вводится число n (двузначное), затем строки, пока не будет введена пустая строка. Вводимые строки могут быть или целым числом, или строкой, в которой нет цифр.
Формат вывода
Среди всех строк – целых чисел – выбрать наибольшее и наименьшее числа, в которых есть хоть одна цифра из n.
Если встретилась строка со словом наказание, ввод нужно прекратить и перейти к выводу.
Вывести нужно все числа от наибольшего до наименьшего с шагом, равным утроенному числу десятков во введенном числе. Если нашлось только одно – вывести его.
Пример 1
Ввод Вывод
27
Чужих приезжих людей жители Винетты боялись больше всего.
37
Может, он разбойник, вор?
42
79
Не понравилось это морскому царю.
64
80
Рассердился он, разбушевался и придумал наказание.
123
79 73 67 61 55 49 43 37
Пример 2
Ввод Вывод
91
1187
1024
Не позволю им хозяйничать в моём море!
1191
1059
Не хотят, чтобы видели их город, так ладно же, никто больше и не увидит его.
1119
1036
Вводим кол-во элементов
Создаём список
Перебираем i от 0 до n
Вводим элемент массива
Добавляем введённый элемент в список
Выводим сообщение со списком
Вводим кол-во элементов
Вводим позицию старта
Перебираем i от 0 до m
Создаём переменную buffer, которая равна элементу списка k+i-1, то есть позиции старта, плюс i и минус 1
Элементу списка k+i-1 присваиваем элемент списка, который находиться на i-индексе.
Присваиваем элементу списка с индексом i, переменную buffer.
Объяснение:
Данный код меняет элементы местами в списке, в определённом промежутке.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#include "stdafx.h"
#include "stdio.h"
#include <time.h>
#include <stdlib.h>
class vector
{
private:
int* m;
int size;
public :
vector(int n = 0);
vector(const vector &vector2);
~vector();
};
vector::vector( int n )
{
if (n < 0) n = 0;
size = n;
m = new int[n];
if(!m)
printf("Error");
else
m = NULL;
}
vector::vector(const vector &vector2)
{
size = vector2.size;
m = new int [size];
for(int i = 0; i<size;i++)
m[i] = vector2.m[i];
printf("kopia stvorena !");
}
vector::~vector()
{
delete[] m;
}
vector(int *m, int size)
{
srand(time(NULL))
if(!m)
printf("error")
else
for(int i = 0; i < size; i++)
m[i] = rand()% 99;
}
int main()
{
vector v1(45),
system("pause");
return 0;
}