Составиь программу в среде pascal вычислить сумму четных и нечетных членов последовательности с общим членом ak=(k+1)/(2k)2, где k =1,2,
111
179
Ответы на вопрос:
// pascalabc.net 3.2, сборка 1488 от 21.06.2017 // внимание! если программа не работает, обновите версию! №1 обычный вариант begin var s: =seqgen(17,k-> (k+2)/(4*sqr(k+; writeln('сумма четных членов ',s.where((x,i)-> i.isodd).sum); writeln('сумма нечетных членов ',s.where((x,i)-> i.iseven).sum); end. результат сумма четных членов 0.43519602111678 сумма нечетных членов 0.821643794807771 №2. вариант "для шибко умных" (с классом для простых дробей) type fraction=class public numerator: biginteger; denominator: biginteger; class function gcd(a,b: biginteger): biginteger; begin while b< > 0 do (a,b): =(b,a mod b); result: =a end; constructor create(num: biginteger: =0; denom: biginteger: =1); begin var n: =gcd(num,denom); numerator: =num div n; denominator: =denom div n end; class function operator +(a,b: fraction): fraction; begin var n: =gcd(a.denominator,b.denominator); result: =new fraction(a.numerator*(b.denominator div n)+ b.numerator*(a.denominator div n),a.denominator div n*b.denominator); end; class procedure operator +=(var r: fraction; a: fraction); begin r: =r+a; end; end; function frc(a,b: biginteger): fraction; begin result: =new fraction(a,b); end; function sumf(self: sequence of fraction): fraction; extensionmethod; begin result: =new fraction; foreach var fr in self do result+=fr; end; function toreal(self: biginteger): (real,integer); extensionmethod; begin var s: =self.tostring; var r: real; if real.tryparse(s,r) then result: =(r,0) else result: =(s.left(16).toreal,s.length-16) end; function toreal(self: fraction): real; extensionmethod; begin var a: =self.numerator.toreal; var b: =self.denominator.toreal; result: =a[0]/b[0]*power(10,a[1]-b[1]) end; function print(self: fraction; s: string: =' '): fraction; extensionmethod; begin result: =self; if self.denominator=1 then write(self.numerator,s) else write(self.numerator,'/',self.denominator,s) end; begin var f: =range(2,17,2).select(k-> frc(k+1,sqr(2*; write('сумма четных членов '); f.print; writeln('= ',f.toreal); f: =range(1,17,2).select(k-> frc(k+1,sqr(2*; write('сумма нечетных членов '); f.print; writeln('= ',f.toreal); результат сумма четных членов 4913189/11289600 = 0.43519602111678 сумма нечетных членов 192723465457/234558414090 = 0.82164379480777
Время = объем переданных данных / скорость скорость = 192 * 1024 бит/с = 196608 бит/с объем переданных данных = 7200 * 1024 * 8 бит = 58982400 бит время = 58982400 / 196608 c = 300.0 c = 5.0 минут
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
Popopoghdhz24.06.2022 05:45
-
Gelag03.06.2020 10:45
-
moaariishkkaa18.11.2022 20:46
-
cJKYSIRJH18.07.2022 23:51
-
SuperCatYT19.02.2021 03:12
-
homonorolla13.01.2021 16:48
-
Лейла004423.02.2020 14:43
-
Hellwood1201.03.2022 13:14
-
palienkoana30.08.2022 03:09
-
Winstorm03.09.2022 07:54
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.