Из этого следует, что каталог "Системное" находится в каталоге "Программное обеспечение", который в свою очередь находится в каталоге "Информатика", который находится на диске C.
Подняться на один уровень вверх - это значит перейти в католог, который находится выше выбранного нами каталога.
Спуститься же на один уровень вниз - значит перейти в каталог который находится ниже выбранного нами каталога.
Вообще все эти каталоги можно рассмотреть как корни дерева: один толстый корень (диск С) начинает разделяться на многие другие корни (каталоги).
Исходя из этих пояснений решим задание.
C:\Информатика\Программное обеспечение\Системное.
Если мы поднимаемся на один уровень вверх, значит мы переходим из каталога "Системное" в каталог который находится выше, то есть в "Программное обеспечение".
Далее мы поднимаемся ещё на один уровень вверх: переходим из каталога "Программное обеспечение" в каталог "Информатика".
Далее мы опускаемся на один уровень вниз: из каталога "Информатика" переходим в каталог "7класс". И мы ещё раз опускаемся из каталога "7класс" в файл "Задания.doc".
Нам остаётся только выписать путь из диска С в файл "Задания.doc"
C:\Информатика\7класс\Задания.doc.
Вот и всё.
C:\Информатика\7класс\Задания.doc.
Вот и всё.
Если у Вас есть вопросы по заданию - можете задать их мне.
Пояснение:
Нам дан путь к каталогу "Системное".
C:\Информатика\Программное обеспечение\Системное.
Из этого следует, что каталог "Системное" находится в каталоге "Программное обеспечение", который в свою очередь находится в каталоге "Информатика", который находится на диске C.
Подняться на один уровень вверх - это значит перейти в католог, который находится выше выбранного нами каталога.
Спуститься же на один уровень вниз - значит перейти в каталог который находится ниже выбранного нами каталога.
Вообще все эти каталоги можно рассмотреть как корни дерева: один толстый корень (диск С) начинает разделяться на многие другие корни (каталоги).
Исходя из этих пояснений решим задание.
C:\Информатика\Программное обеспечение\Системное.
Если мы поднимаемся на один уровень вверх, значит мы переходим из каталога "Системное" в каталог который находится выше, то есть в "Программное обеспечение".
Далее мы поднимаемся ещё на один уровень вверх: переходим из каталога "Программное обеспечение" в каталог "Информатика".
Далее мы опускаемся на один уровень вниз: из каталога "Информатика" переходим в каталог "7класс". И мы ещё раз опускаемся из каталога "7класс" в файл "Задания.doc".
Нам остаётся только выписать путь из диска С в файл "Задания.doc"
C:\Информатика\7класс\Задания.doc.
Вот и всё.
C:\Информатика\7класс\Задания.doc.
Вот и всё.
Если у Вас есть вопросы по заданию - можете задать их мне.
Удачи Вам! :)
Пока мы не набрали n простых чисел, будем перебирать числа от 2 до ... и пытаться разложить их на множители.
Код вложен в ответ.
2. Решето Эратосфена
Решето Эратосфена позволяет быстро находить все простые числа на отрезке
(в нашем случае x - какая-то константа).
АлгоритмПусть x равен 25.
Тогда идея такова: запишем все числа от 2 до 25.
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
По умолчанию все числа помечены как простые. Конкретно здесь числа, помеченные как составные, будут показываться в нижних индексах: ₂₅
Берем первое число 2. Оно помечено как простое. От квадрата этого числа до x помечаем все числа, делящиеся на 2, как составные:
2 3 ₄ 5 ₆ 7 ₈ 9 ₁₀ 11 ₁₂ 13 ₁₄ 15 ₁₆ 17 ₁₈ 19 ₂₀ 21 ₂₂ 23 ₂₄ 25
Берем следующее число, помеченное как простое. Это 3. От квадрата этого числа до x помечаем все числа, делящиеся на 3, как составные:
2 3 ₄ 5 ₆ 7 ₈ ₉ ₁₀ 11 ₁₂ 13 ₁₄ ₁₅ ₁₆ 17 ₁₈ 19 ₂₀ ₂₁ ₂₂ 23 ₂₄ 25
Следующее простое число - 5. От квадрата пяти до x помечаем все числа, кратные 5, как составные:
2 3 ₄ 5 ₆ 7 ₈ ₉ ₁₀ 11 ₁₂ 13 ₁₄ ₁₅ ₁₆ 17 ₁₈ 19 ₂₀ ₂₁ ₂₂ 23 ₂₄ ₂₅
Квадрат всех остальных простых чисел больше x. Решето построено.
КодПеревернем массив, представляющий решето. В composite[i] хранится true, если i - составное, false иначе.
#include <bits/stdc++.h>
using namespace std;
const int x = 2000000;
bool composite[x + 1];
void calc() {
for (long long i = 2; i <= x; ++i)
if (!composite[i] && (i * i <= x))
for (long long j = i * i; j <= x; j += i)
composite[j] = true;
}
int main() {
calc();
int n;
cin >> n;
int k = 0;
for (int i = 2; i <= x && k < n; ++i)
if (!composite[i]) {
cout << i << " ";
++k;
}
cout << endl;
return 0;
}