использовать Чертежник
алг
нач
опустить перо
сместиться в точку (0,100)
сместиться в точку (200,300)
сместиться в точку (300,200)
сместиться в точку (300,100)
сместиться в точку (200,100)
сместиться в точку (200,0)
сместиться в точку (100,0)
сместиться в точку (200,-100)
сместиться в точку (100,-200)
сместиться в точку (0,-100)
сместиться в точку (0,-200)
сместиться в точку (0,200)
сместиться в точку (0,100)
сместиться в точку (-200,300)
сместиться в точку (-300,200)
сместиться в точку (-300,100)
сместиться в точку (-200,100)
сместиться в точку (-200,0)
сместиться в точку (-100,0)
сместиться в точку (-200,-100)
сместиться в точку (-100,-200)
сместиться в точку (0,-100
кон
задача 1.
var
a, s : integer;
begin
writeln('введите числа:');
while s < 101 do begin
read(a);
s += a;
end;
writeln('Стоп! Сумма чисел больше 100, s=', s);
end.
задача 2.
var
h : char;
n : integer;
begin
writeln('введите символы:');
while n < 5 do begin
read(h);
if h = 'F' then n += 1;
end;
writeln('Стоп! Символ F был введен 5 раз')
end.
задача 3.
var
a : integer;
begin
write('Введите число от 1 до 4 : ');
readln(a);
if (a = 1) or (a = 2) then begin
for var i := 3 downto 1 do begin
for var j := 1 to i do write('*');
writeln;
end;
end
else if (a = 3) or (a = 4) then begin
for var i := 1 to 3 do begin
for var j := 1 to i do write('*');
writeln;
end;
end
else writeln('вы ввели не правильное число :(');
end.
Программе нужно сказать количество элементов в массиве, после этого она выведет необходимую информацию. Если нужен вывод самих массивов, раскомментируйте соответствующие строки.
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <locale.h>
void selection_sort(int *arr, int n, std::string name)
{
/*std::cout << "Неотсортированный массив " << name << std::endl;
for (int i = 0; i < n; i++)
std::cout << arr[i] << " ";
std::cout << std::endl;*/
std::clock_t c_start = std::clock();
for (int i = 0; i < n - 1; i++)
{
int ind_min = i;
for (int j = i + 1; j < n; j++)
if (arr[j] < arr[ind_min]) ind_min = j;
if (ind_min != i) {
int t = arr[ind_min];
arr[ind_min] = arr[i];
arr[i] = t;
}
}
std::clock_t c_end = std::clock();
std::cout << "Отсортированный массив " << name << " (сортировка выбором)"<< std::endl;
/*for (int i = 0; i < n; i++)
std::cout << arr[i] << " ";
std::cout << std::endl;*/
float time = 1000.0 * (c_end-c_start) / CLOCKS_PER_SEC;
std::cout << "Времени затрачено: " << time << " мс" << std::endl;
}
int main()
{
setlocale(LC_ALL, "rus");
int n;
std::cout << "Число элементов массива: ";
std::cin >> n;
int *arr = new int[n];
arr[0] = 0;
for (int i = 1; i < n; i++)
arr[i] = arr[i-1] + rand() % 3;
selection_sort(arr, n, "[Отсортирован по возрастанию]");
arr[0] = 10000;
for (int i = 1; i < n; i++)
arr[i] = arr[i-1] - rand() % 3;
selection_sort(arr, n, "[Отсортирован по убыванию]");
for (int i = 0; i < n; i++)
arr[i] = rand() % 10000;
selection_sort(arr, n, "[Случайный массив]");
return 0;
}
Пример работы:
Число элементов массива: 30000
Отсортированный массив [Отсортирован по возрастанию] (сортировка выбором)
Времени затрачено: 1760 мс
Отсортированный массив [Отсортирован по убыванию] (сортировка выбором)
Времени затрачено: 2838 мс
Отсортированный массив [Случайный массив] (сортировка выбором)
Времени затрачено: 1789 мс