shmyg
Дек. 24, 2006 20:19:41
Помогите мне пожалуйста решить задачи. Нужно скоро сдать, а я в питоне ничего не понимаю… Некоторые задачи я сделать смог, а вот некоторые нет… Буду очень благодарен.
Дано целое число в диапазоне от 20-69, определяющее возраст (в годах). Вывести строку – словесное описание указанного возраста, обеспечьте правильное согласование числа со словом “год”. Например: 20 – двадцать лет. 54 – пятьдесят четыре года.
Написать программу которая считывает с клавиатуры вещественное число X и целое число N (>0), а затем выводит значение суммы (x-((x**3)/3)+((5x/5)/5)… ((-1)**N)*((X**2N))+(1/(2N+1)! (N!=1*2…*N). Полученное число является приближенным значением функции sinX
В одномерном массиве, состоящем из n (n определяется вводом) вещественных элементов, вычислить (используя подпрограммы) сумму элементов массива, расположенных после минимального элемента. Упорядочить элементы массива по возрастанию модулей элементов.
Пусть дан текстовый файл. Создайте файл целых чисел, в котором каждой строке исходного файла соответствует в выходном файле число, равное количеству слов в строке. Пустой строке, или строке, состоящей из одних пробелов, соответствует число 0.
В одномерном массиве, состоящем из n (n определяется вводом) вещественных элементов, вычислить (используя подпрограммы) сумму элементов массива с нечётными номерами. Сжать массив, удалив из него элементы, модуль которых не превышает 8. освободившиеся в конце массива элементы заполнить нулями.
Пусть дан файл целых чисел. Выберете наибольшее из них, принадлежащее интервалу . Концы интервала a,b вводятся со стандартного устройства ввода
slav0nic
Дек. 24, 2006 22:48:52
#6
#в файле в строке по 1 числу
numbers =
#читаем построчно файл
f = open(“/tmp/1.txt”, “r”)
for i in f:
#добавляем в список, удаляя конец строки “\n”
numbers.append(int(i.strip()))
#вводим границы
print “Enter a”
a = input()
print “Enter b”
b = input()
#ищем чё надо
max = 0
for i in numbers:
if i in range(a,b) and max < i:
max = i
print “max ”,max
остальное вгруз В)
shmyg
Дек. 24, 2006 23:12:15
спасибо!!!!! Попробуй решить другие. А какая это задача, четвертая??
slav0nic
Дек. 24, 2006 23:17:06
шестая, мож на досуге на работе и посмотрю, но особо не горю желанием)
особенно первое без спец модулей%)
shmyg
Дек. 24, 2006 23:20:13
Ясно. Ну если будет вариант, то посмотри пожалуйста. А то мне зачет не поставят… Заранее благодарен.
Striver
Дек. 26, 2006 05:39:53
Первую задачу можно слепить так:
# -*- coding: cp1251 -*-
desatki=["","",u"двадцать",u"тридцать",u"сорок",u"пятьдесят",u"шестьдесят"]
edinicy=[u"лет",u"один год",u"два года",u"три года",u"четыре года",u"пять лет",u"шесть лет", u"семь лет",u"восемь лет",u"девять лет"]
try:
ntxt=input()
n=int(ntxt)
if not n in range(20,69):
raise
dn=n/10
en=n%10
print desatki[dn]+" "+edinicy[en]
except:
print u"Необходимо ввести целое число от 20 до 69"
Если не нужны проверки на правильный ввод, try/except можно убрать
Striver
Дек. 26, 2006 06:13:39
Четвёртая:
fil=open('txt1.txt')
lstext=fil.readlines()
fil.close()
lswords=[s.split() for s in lstext]
lsn=[]
for i in lswords:
lsn.append(str(len(i)))
fil=open('n.txt','w')
fil.write(' '.join(lsn))
fil.close()
Striver
Дек. 26, 2006 07:15:15
Вторая задача:
# -*- coding: cp1251 -*-
print u“Введите значение переменной”
x=float(input())
print u“введите количество членов”
n=input()
znak=1
Sum=0.0
Yn=x
x2=x*x
for i in range(n):
Sum+=znak*Yn
znak=-znak
Yn=Yn*x2/(2*(i+1)*(2*i+3))
print Sum
ты б хоть формулу суммы правильно переписал, пришлось у Яндекса выяснять
p.s. А “Буду очень благодарен” - это только в мыслях или как?
Striver
Дек. 26, 2006 14:16:47
3 задача.
Где-то наверное так:
# -*- coding: cp1251 -*-
def vvod(n):
“Ввод элементов массива”
ls=
for i in range(n):
print u“Введите элемент №”, i
ls.append(float(input()))
return ls
def nmin(ls):
“Вычисляет номер минимального элемента”
x=min(ls)
return ls.index(x)
def abscmp(a,b):
return cmp(abs(a),abs(b))
print u“Введите длину массива”
n=input()
mas=vvod(n)
print u“Сумма элементов, расположенных после минимального”, sum(mas)
mas.sort(abscmp)
print u“Массив, упорядоченный по возрастанию модулей элементов:”
print mas
Никогда не понимал преподские условия вроде “(используя подпрограммы)”, поэтому натыкал их больше чем надо бы по логике.