Код:s = [] result = [] i = input() s.append(i) while i != "end": i = input().lower() s.append(i) s.remove("end") for i in range(len(s)): result.append(list()) for i in range(len(s)): for j in range(5): result[i].append(int(s[i])**2) for i in result: print(i)Вывод:1 2 3 end [1, 1, 1, 1, 1] [4, 4, 4, 4, 4] [9, 9, 9, 9, 9]P.S. после 3 идут двузначные, трехзначные квадраты и список немного съезжает. Получается что то типа этого: [1, 1, 1, 1, 1] [4, 4, 4, 4, 4] [9, 9, 9, 9, 9] [16, 16, 16, 16, 16] [25, 25, 25, 25, 25]Если тебе нужно, чтобы каждое число было под своим столбиком, то попробуй написать вывод списка сам, используя два цикла. Выводи построчно каждый символ с дефолтным кол-вом пробелов между числами с end=" " в операторе print. В конце вывода всего вложенного цикла сделай print(), чтобы вывод следующей строки списка осуществлялся с новой строки.
Здесь нужно использовать вс типизированный файл и, соответственно, вторую файловую переменную (fr2). Сделать это можно так: while not eof(fr) and (kol=0) do begin read(fr, Marshrut); if (Marshrut.NK.N <> '11') then write(fr2,Marshrut) else begin inc(kol); y:=Marshrut; end; end; if not eof(fr) then begin read(fr, Marshrut); write(fr2,Marshrut); end; if (kol=1) then write(fr2,y); Дальше нужно просто переписать оставшиеся записи из первого файла во второй. Затем оба файла закрыть, первый файл удалить, а второй переименовать (т.е. назвать его так, как назывался первый файл).
Попробуйте ещё вот такой вариант: (здесь k1 и k2 - целые, а y - типа ) if (Marshrut.NK.N = '11') then begin writeln('... '); inc(kol); y:=Marshrut; k1:=FilePos(fr)-1; k2:=FilePos(fr); if not eof(fr) then begin read(fr, Marshrut); seek (fr, k1); write(fr, Marshrut); seek (fr, k2); write (fr, y); end;
end;
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку