Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 08.03.2022
Сообщений: 18

Перевод с языка C++ на Python или же решение задачи

02.12.2022, 21:59. Показов 2116. Ответов 5

Студворк — интернет-сервис помощи студентам
Здравствуйте, задача в том, чтобы перевести код с языка С++ на язык Python


Вышел код:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
a = [100]
b = [100]
c = [100]
d = [100]
n=int(input())
print(n)
 
for i in range (n):
    a[i],b[i],c[i]=map(int,input().split())
    d[i] = a[i] * 3600 + b[i] * 60 + c[i]
 
 
 
for i in range (n):
    j=i+1
    for j in range (n):
        if d[i] > d[j]:
            a[i],a[j]=a[j],a[i]
            b[i],b[j]=b[j],b[i]
            c[i],c[j]=c[j],c[i]
            d[i],d[j]=d[j],d[i]
            
for i in range (n):
     print(a[i], " ", b[i], " ", c[i], "\n")
Выдает ошибку когда второй раз проходит по (9) строке :

a[i],b[i],c[i]=map(int,input().split())
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.12.2022, 21:59
Ответы с готовыми решениями:

Выбор языка программирования под конкретные задачи! Python/C#/C++ или другой
Здравствуйте. Тема, которую я рассматриваю уже очень много времени. Но мне надоело стоять на месте. Потому готовьтесь читать не маленький...

перевод паскаля в си, или решение задачи
переведите пожалуйста или решите на си++ вот задача На экране центр круга и чтобы найти его радиус дано 3 целых чисел. Если круг не...

Конвертация Python кода в C# (или решение задачи)
Здравствуйте, пожалуйста подскажите как перевести данный код в C# (оригинал статьи ). Либо подскажите решение на С# для задачи где...

5
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
02.12.2022, 22:08
Цитата Сообщение от Rin_Caspion Посмотреть сообщение
Выдает ошибку когда второй раз проходит по (9) строке
Естественно, т.к. у вас списки a, b, c, d содержат по одному значению. В первой итерации вы меняете это значение на то что вы получаете из input, а дальше вы обращаетесь к несуществующему элементы списка.
Цитата Сообщение от Rin_Caspion Посмотреть сообщение
Здравствуйте, задача в том, чтобы перевести код с языка С++ на язык Python
Выложите код на C++, так легче будет вам помочь.
0
0 / 0 / 0
Регистрация: 08.03.2022
Сообщений: 18
02.12.2022, 22:12  [ТС]
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
25
26
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
int a[100], b[100], c[100], d[100];
cin >> n;
for(int i = 0; i < n; i++)
{
cin >> a[i] >> b[i] >> c[i];
d[i] = a[i] * 3600 + b[i] * 60 + c[i]; 
}
for(int i = 0; i < n; i++)
{
for(int j = i + 1; j < n; j++)
{
if (d[i] > d[j]) 
{
swap(a[i], a[j]);
swap(b[i], b[j]);
swap(c[i], c[j]);
swap(d[i], d[j]);
}}}
for(int i = 0; i < n; i++)
cout << a[i] << " " << b[i] << " " << c[i] << endl;
}
0
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
02.12.2022, 22:31
Лучший ответ Сообщение было отмечено Rin_Caspion как решение

Решение

Rin_Caspion, Ну вот прямо "дословно" как у вас. Ваш код из поста выше с минимальными изменениями.
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
n = int(input())
a = [0] * n
b = [0] * n
c = [0] * n
d = [0] * n
 
for i in range(n):
    a[i], b[i], c[i] = map(int, input().split())
    d[i] = a[i] * 3600 + b[i] * 60 + c[i]
 
for i in range(n):
    for j in range(i + 1, n):
        if d[i] > d[j]:
            a[i], a[j] = a[j], a[i]
            b[i], b[j] = b[j], b[i]
            c[i], c[j] = c[j], c[i]
            d[i], d[j] = d[j], d[i]
 
for i in range(n):
    print(a[i], " ", b[i], " ", c[i], "\n")
Code
1
2
3
4
5
6
7
8
9
10
11
12
3
3 4 5
1 2 3
2 3 4
1   2   3 
 
2   3   4 
 
3   4   5 
 
 
Process finished with exit code 0
Но можно сделать все "красивее".
1
Вирусоборец
 Аватар для thyrex
14450 / 7489 / 1582
Регистрация: 06.09.2009
Сообщений: 27,133
02.12.2022, 22:38
anton78spb,
Python
11
for i in range(n-1):
И при выводе в конце не нужен перевод строки и разделяющие пробелы
0
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
02.12.2022, 22:38
Rin_Caspion, Как-то так. За пару строк. Можно сократить до одной.
Python
1
2
for i in sorted([*map(int, input().split())] for _ in range(int(input()))):
    print(*i)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.12.2022, 22:38
Помогаю со студенческими работами здесь

Перевод программы с языка Python
Здравствуйте, можно пожалуйста перевести эту программу с пайтона на с++? from math import sin, cos, log10, pow, asin fun1 = lambda x: 1...

Перевод программы с языка Python СИ
def sqrTabl(n): for i in range(1,n+1): s=0 for j in range(i): s+=2*j+1 print(str(i)+&quot; &quot;+str(s)) def qubeTabl(n): ...

Перевод программы с языка Python на C++
На просторах интернета нашла очень полезную реализацию отображения городов и путей (задача Коммивояжёра) для моей курсовой. Но как ее...

Перевод программы с языка СИ на Python
Перевести код программы с языка СИ на Python: #include&lt;stdio.h&gt; #include&lt;math.h&gt; #include&lt;stdlib.h&gt; #include&lt;string.h&gt; ...

Перевод языка C# в язык Python
Здравствуйте, помогите пожалуйста, буду очень благодарен! Нужно перевести C# в Python using System; using...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru