В вагоне скорого поезда, идущего в Москву, ехали на конференцию работников сельского хозяйства четыре алтайца. Агроном вез образцы сортов пшеницы. Ровесники Михаил и Юрий оказались любителями шахмат, а зоотехник следил за их игрой. Вяснилось, что тракторист в Москве не бывал, остальные же едут в Москву не в первый раз, а Юрий даже родился в Москве. Николай всю дорогу на больших остановках поезда покупал новые газеты и журналы. По вечерам комбайнер, оказавшийся старше Михаила, рассказывал Ивану о войне. Как звали каждого специалиста?
Первая строчка спрашивает у человека адрес файла. После ввода получается подобная строчка: "C:\Users\usr\password.txt"
Но там есть такая штука ".split('/')"
Суть её в том, что она разделяет строку и суёт части в массив. В скобках пишется сам разделитель. Если в скобках ничего нет, то разделителем служит пробел. Если выполнить
'hello world guys yes no'.split()
то получим в итоге массив
['hello', 'world', 'guys', 'yes', 'no']
В твоём случае разделителем служит "/". Если ты хотел разделить адрес на составляющие, нужно использовать слеш в другую сторону.
Тут строчка
'C:\Users\usr\password.txt'.split('/')
превратиться в
['C:\Users\usr\password.txt']
То есть не разделиться.
Я думаю задумывалось вот так:
'C:\Users\usr\password.txt'.split('\')
выйдет
['C:', 'Users', 'usr', 'password.txt']
Будем отталкиваться от моего варианта.
Далее идёт цикл for. В нашем случае в цикле for "i" будет равна числу от 0, до кол-ва объектов в массиве.
len(a) - даёт кол-во объектов в массиве.
in range - проходит по числам в определенном диапазоне. Если стоит одно число, то проходится от 0 до него (если число 3, то проходится по числам 0,1,2). Если два числа, то проходится от первого до второго с шагом один (если числа 2 и 5, то проходится по числам 2,3,4). Третье число (все числа записываются через запятую) будет означать шаг. in range(0,40,10) пройдётся по числам 0, 10, 20, 30.
В нашем случае in range проходится по кол-ву объектов в массиве.
В следующей строчке выводится "a[i]". a - это наш массив. i - порядковый номер объекта в массиве (стоит помнить, что массив начинает счёт не с 1, а с 0. Т. е. 0 объект - это первый объект.)
Если в код засунуть путь до файла, то в итоге он тебе выведет каждую часть путя.
Если C:\Users\usr\password.txt, то код напишет
C:
Users
usr
password.txt
Пиши, если есть вопросы.
Відповідь:
#include <iostream>
using namespace std;
const int size = 4;
void inputarr(int *arr,const int size){
for(int i = 0 , counter = 1; i < size; i++, counter++){
cout << "Введите " << counter << " число: ";
cin >> arr[i];
}
}
void sortarr(int *arr,const int size){
for(int i = 0; i < size - 1; ++i){
int biggest = i;
for(int j = i + 1; j < size; ++j){
if(arr[j] > arr[biggest]){
biggest = j;
}
}
swap(arr[i],arr[biggest]);
}
}
void printarr(int *arr,const int size){
for(int i = 0; i < size; i++){
cout << arr[i] << " ";
}
}
int main(){
setlocale(LC_ALL, "Rus");
int arr[size];
inputarr(arr,size);
cout << "Изначальное положение: ";
printarr(arr,size);
cout << "\nРезультат: ";
sortarr(arr,size);
printarr(arr,size);
return 0;
}
Использовал одномерный массив и сделал сортировку методом выбора по убыванию