0 / 0 / 0
Регистрация: 08.01.2020
Сообщений: 1
1

Вывести дроби в указанном порядке

08.01.2020, 16:57. Показов 1883. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите, пожалуйста, с задачей.
Даны две дроби a
b <
c
d
с целыми неотрицательными числителями и целыми положительными
знаменателями, а также выбрано некоторое целое положительное N. Рассмотрим все несократимые
дроби e
f
с целыми положительными числителями и знаменателями, не превосходящими N, лежащие
между этими двумя дробями: a
b <
e
f <
c
d
. Выпишем их в конечную последовательность в порядке
возрастания сначала знаменателей, а потом числителей: дробь e1
f1
будет в этом списке раньше e2
f2
,
либо если f1 < f2, либо если f1 = f2 и e1 < e2. Ваша цель — вывести n первых дробей в этой
последовательности (или всю последовательность, если в ней менее n дробей).
Формат входных данных
В первой строке находятся шесть целых чисел a, b, c, d, N, n — две данные дроби, ограничение
на числители и знаменатели и количество дробей, которые необходимо вывести (0 6 a 6 1018
,
1 6 b, c, d, N 6 1018
, 1 6 n 6 200 000). Гарантируется, что a
b <
c
d
, или, что равносильно, ad < bc.
Формат выходных данных
В первой строке выведите целое число n
0 — количество дробей, которые вы выведете. В следующих n
0
строках выведите сами дроби в нужном порядке: в i-й строке должны быть целые ei и
fi
, разделённые пробелом — взаимно простые числитель и знаменатель i-й дроби (1 6 ei
, fi 6 N).
Число n
0 должно либо равняться n, либо лежать в пределах от 0 до n − 1 и равняться количеству
несократимых дробей между a
b
и
c
d
, у которых числители и знаменатели целые положительные и не
превосходят N.
Вот что я пока написал:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <iostream>
 
using namespace std;
 
int main() {
    int a, b, c, d, N, n;
    cin >> a >> b >> c >> d >> N >> n;
    long mas [200000];
    int i = 0;
    for (int f = 1; f <= N; f++){
        for (int e = 0; e <= N; e++){
            if (((f % e) != 0 ) && ((e / f) < (c / d)) && ((e / f) > (a / b))){
                mas [i] = e;
                mas [i + 1] = f;
                i += 2;
            }
        }
    }
    int count = (i - 1) / 2;
    cout << count;
    for (int j = 0; j < (i - 2); j += 2){
        cout << mas[j] << ' ' << mas [j + 1];
    }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.01.2020, 16:57
Ответы с готовыми решениями:

Вывести элементы массива в указанном порядке
Дан массив A размера N. Вывести его элементы в следующем по-рядке: A1,AN , A2,AN −1,A3,AN...

Вывести строки в указанном пользователем порядке
Код почти работает, но... Мы задаем ему числа и программа должна вывести строки под этими номерами....

Вывести на консоль заданную квадратную матрицу в указанном порядке
2.Дана Матрица NxN(N четно) распечатать ее в указанном порядке. Вот тут довольно интересно. Была...

Вывести значения всех элементов заданного массива в указанном порядке
Вывести заданный массив на печать. Входные данные: Выходные данные: В первой строке входного...

0
08.01.2020, 16:57
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.01.2020, 16:57
Помогаю со студенческими работами здесь

Найти минимальный и максимальный из элементов данного набора и вывести их в указанном порядке
Дано целое число N и набор из N чисел. Найти минимальный и максимальный из элементов данного набора...

Найти номера первого и последнего минимального элемента из данного набора, и вывести их в указанном порядке
Помогите пожалуйста. Я не могу понять как найти этот нормер. Получается есть набор из чисел....

Найти номера первого максимального и последнего минимального элемента из данного набора и вывести их в указанном порядке
Дано целое число N и набор из N целых чисел. Найти номера первого максимального и последнего...

Из паскаля на с++. Вывести в порядке возрастания все простые несократимые дроби со знаменателем не большим m
uses crt; const n=7; type frac=record p,q:1..n; end; function...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru