• Предмет: Информатика
  • Автор: 2SAnastasiAS2
  • Вопрос задан 6 лет назад

Одномерный массив, состоящий из n вещественных элементов, вводится с клавиатуры. Изменить массив так, чтобы элементы, стоящие в нем на четных номерах, заменились их целой частью, а элементы, стоящие на нечетных номерах, заменились их дробной частью.
написать программу в питоне, через списки, с объяснением программы

Ответы

Ответ дал: tutu007
0

Ответ:

n=int(input("Введите n: "))

massiv=[float(input()) for i in range(n)]

print(massiv)

for i in range(n):

   if (i+1)%2==0:

       massiv[i]=int(massiv[i])

   else:

       massiv[i]=round(massiv[i]-int(massiv[i]),3)

print(massiv)


tutu007: просто по массиву проходим, и тот индекс+1, который нечетный - меняем на разность вещественного и целого, округляем, четный - просто целое число делаем
mirageKZ: вместо massiv[i]=round(massiv[i]-int(massiv[i]),3) можно проще так massiv[i]=massiv[i]%1
tutu007: это одна и та же операция, просто у меня уже было написано int(massiv[i]) и мне быстрее было дописать massiv[i]-
tutu007: и round нужно для округления, т.к python выводил бы вот такие дробные части: 0.88888888888888888888887
2SAnastasiAS2: можете написать пояснение к программе
tutu007: я первым комментарием же написал
tutu007: вводим кол-во элементов, потом по циклу вводим сами элементы
далее идем по массиву и проверяем на четность (i+1 для того, чтобы отсчет шел с единицы, а не с нуля), когда четный = выводим только целую часть, нечетный - из всего числа вычитаем целую часть и получаем дробную, округляем
Вас заинтересует