В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
enzhedob
enzhedob
03.09.2022 03:22 •  Информатика

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

Показать ответ
Ответ:
hhjjkh
hhjjkh
20.09.2022 00:53

Код:

#include <fstream>#include <cmath>void first_task(std::ifstream &cin, std::ofstream &cout) {    int n, k = 1; cin >> n >> k;    cout << n / k;}void second_task(std::ifstream &cin, std::ofstream &cout) {    int N; cin >> N;    cout << 2 * (N / 2 + 1);}void third_task(std::ifstream &cin, std::ofstream &cout) {    int N; cin >> N;    auto t = [](int c, int N){return c / (int) pow(10, N) % 10;};    cout << t(N, 2) + t(N, 1) + t(N, 0);}void fourth_task(std::ifstream &cin, std::ofstream &cout) {    int N; cin >> N;    for (int it = 0; it < log2(N); ++it) {        cout << pow(2, it) << " ";    }}void fifth_task(std::ifstream &cin, std::ofstream &cout) {    int h, a, b;    cin >> h >> a >> b;    int h0 = h - a, dx = a - b;    int g = 1 + h0/dx + (h0%dx + dx - 1)/dx;    if (g < 0)        cout << INFINITY;    else        cout << g;}int main() {    std::ifstream cin("input.txt");    std::ofstream cout("output.txt");    // Choose your function    int N = 0; // 0-4    void (*tasks[5]) (std::ifstream &, std::ofstream &) = {first_task, second_task, third_task, fourth_task, fifth_task};    tasks[N](cin, cout);    return 0;}
0,0(0 оценок)
Ответ:
FisicAnya
FisicAnya
07.10.2022 04:03
Для того, чтобы перевести целое число из десятичной в двоичную систему счисления, необходимо разделить его на два, а затем делить на два каждое полученное частное до тех пор, пока не получится единица. Искомое двоичное число записывается как последовательность цифр, равных последнему частному (единице) и всем полученным остаткам, начиная с последнего.

Надо перевести сначала 21 в двоичную, потом 2 в двоичную и потом 2002 в двоичную

Получается вот так:
21 = 10101
2=10
2002 = 11111010010

В итоге:
10101.10.11111010010
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота