oksana1410
01.04.2021 15:09

Текст ЗАДАНИЯ Перед Вами картинка инструмента :
Напишите название инструмента и при создании какой фигуры используется
BHManMe: Ha konec eo annoe He anser konnwecreo Cannon, ou OK, OTCTynne un
дается за указание названия инструмента
дaeron за приведение примера фигуры
1) Перемести фигуру​

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Полькаа1642
03.03.2020 09:26

c++

#include <iostream>

using namespace std;

int main()

{

unsigned long long int max_numer;

cin >> max_numer;

long long digit_arr[10] = {};

for (int i = 1; i <= max_numer; i++)

{

 int j = i;

 while (j > 0)

 {

  digit_arr[j % 10]++;

  j /= 10;

 }

}

for (int i = 0; i < 10; i++)

{

 cout << digit_arr[i] << " ";

}

}

Объяснение:

Работает на посылках до 100000. Дальше идёт интересная закономерность по которой изменяется.

unsigned long long int digit_arr[10] = {};

 int z = max_numer / 100000;

 if (z == 1)

 {

  digit_arr[0] += 38894;

  digit_arr[1] += 50001;

  digit_arr[2] += 50000;

  digit_arr[3] += 50000;

  digit_arr[4] += 50000;

  digit_arr[5] += 50000;

  digit_arr[6] += 50000;

  digit_arr[7] += 50000;

  digit_arr[8] += 50000;

  digit_arr[9] += 50000;

 }

 if (z == 2)

 {

  digit_arr[0] += 88894;

  digit_arr[1] += 200000;

  digit_arr[2] += 100001;

  digit_arr[3] += 100000;

  digit_arr[4] += 100000;

  digit_arr[5] += 100000;

  digit_arr[6] += 100000;

  digit_arr[7] += 100000;

  digit_arr[8] += 100000;

  digit_arr[9] += 100000;

 }

 if (z == 3)

 {

  digit_arr[0] += 138894;

  digit_arr[1] += 250000;

  digit_arr[2] += 250000;

  digit_arr[3] += 150001;

  digit_arr[4] += 150000;

  digit_arr[5] += 150000;

  digit_arr[6] += 150000;

  digit_arr[7] += 150000;

  digit_arr[8] += 150000;

  digit_arr[9] += 150000;

 }

 if (z == 4)

 {

  digit_arr[0] += 188894;

  digit_arr[1] += 300000;

  digit_arr[2] += 300000;

  digit_arr[3] += 300000;

  digit_arr[4] += 200001;

  digit_arr[5] += 200000;

  digit_arr[6] += 200000;

  digit_arr[7] += 200000;

  digit_arr[8] += 200000;

  digit_arr[9] += 200000;

 }

 if (z == 5)

 {

  digit_arr[0] += 238894;

  digit_arr[1] += 350000;

  digit_arr[2] += 350000;

  digit_arr[3] += 350000;

  digit_arr[4] += 350000;

  digit_arr[5] += 250001;

  digit_arr[6] += 250000;

  digit_arr[7] += 250000;

  digit_arr[8] += 250000;

  digit_arr[9] += 250000;

 }

 if (z == 6)

 {

  digit_arr[0] += 288894;

  digit_arr[1] += 400000;

  digit_arr[2] += 400000;

  digit_arr[3] += 400000;

  digit_arr[4] += 400000;

  digit_arr[5] += 400000;

  digit_arr[6] += 300001;

  digit_arr[7] += 300000;

  digit_arr[8] += 300000;

  digit_arr[9] += 300000;

 }

 if (z == 7)

 {

  digit_arr[0] += 338894;

  digit_arr[1] += 450000;

  digit_arr[2] += 450000;

  digit_arr[3] += 450000;

  digit_arr[4] += 450000;

  digit_arr[5] += 450000;

  digit_arr[6] += 450000;

  digit_arr[7] += 350001;

  digit_arr[8] += 350000;

  digit_arr[9] += 350000;

 }

 if (z == 8)

 {

  digit_arr[0] += 388894;

  digit_arr[1] += 500000;

  digit_arr[2] += 500000;

  digit_arr[3] += 500000;

  digit_arr[4] += 500000;

  digit_arr[5] += 500000;

  digit_arr[6] += 500000;

  digit_arr[7] += 500000;

  digit_arr[8] += 400001;

  digit_arr[9] += 400000;

 }

 if (z == 9)

 {

  digit_arr[0] += 438894;

  digit_arr[1] += 550000;

  digit_arr[2] += 550000;

  digit_arr[3] += 550000;

  digit_arr[4] += 550000;

  digit_arr[5] += 550000;

  digit_arr[6] += 550000;

  digit_arr[7] += 550000;

  digit_arr[8] += 550000;

  digit_arr[9] += 450001;

 }

Я попробовал сделать костыль, но там этих костылей до скончания веков писать. Проще сделать алгоритм автоматически рассчитывающий по заметной закономерности, который вычисляет количество цифр max_numer / 100000, и к нему добавить алгоритм, который вычисляет количество цифр в max_numer % 100000

0,0(0 оценок)
Ответ:
анна2246
03.08.2022 17:54
Задание №1
var
  x:integer;
begin
  for x:=5 to 15 do Writeln('x=',x:2,'  y=',2*x)
end.

Результат выполнения программы:
x= 5  y=10
x= 6  y=12
x= 7  y=14
x= 8  y=16
x= 9  y=18
x=10  y=20
x=11  y=22
x=12  y=24
x=13  y=26
x=14  y=28
x=15  y=30

Задание №2
var
  x:real;
begin
  x:=1;
  while x<=2 do begin
    Writeln('x=',x:4:1,'   y=',sin(3*x):8:5);
    x:=x+0.3
  end
end.

Результат выполнения программы:
x= 1.0   y= 0.14112
x= 1.3   y=-0.68777
x= 1.6   y=-0.99616
x= 1.9   y=-0.55069

Задание №3
const
  n=40;
var
  i:integer;
  a:real;
begin
  for i:=1 to n do
  begin Write('a',i,'='); Read(a); Writeln('S=',sqr(a)) end
end.

Фрагмент работы программы:
a1=2.6
S=6.76
a2=4.18
S=17.4724
a3=1
S=1
a4=17
S=289
a5=
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота