MzSpider
Новичок
|
Цитата: ksiom написал 15 июля 2009 22:14 enigma №3 var b:array[1..20]of real; i:integer; begin randomize; for i:=1 to 20 do b[ i ]:=1+random(99); for i:=1 to 20 do if b[ i ]>0 then b[ i ]:=b[ i ]*3 else b[ i ]:=b[ i ] / 8; end; Если не устраивает функция div, то меняй на обычное деление, но придется изменить тип массива. KMA: читайте задание внимательно (в три раза, а не на 3 и если используете div, то div и пишите, а не деление. В задаче сказано в 8 раз, значит прямая операция деления, поэтому лучше использовать real. Извини, что поправил пост. И еще если пишешь i в квадратных кавычках, то пиши так [ i ] или [i ] или [ i] но никак не слитно все. Подробности в правилах. (Сообщение отредактировал KMA 15 июля 2009 23:24)
тут рандом ненужен можно и так сделать , можно считать из фаила 1ая строка содержит кол-во чисел в масиве (N) 2ая строка сам массив(на олимпиадах везде так) for i := 1 to n do begin If mas[ i ] > 0 then mas[ i ] := mas[ i ] * 3; (подправте если неправельно я не помню формулу возведение в степень) If mas[ i ] < 0 then mas[ i ] := mas[ i ] / 8; end; (Сообщение отредактировал MzSpider 19 июля 2009 11:32)
|
Всего сообщений: 19 | Присоединился: июль 2009 | Отправлено: 19 июля 2009 8:28 | IP
|
|
malova83
Новичок
|
Помогите добить задачку....что то не выходит...выдает ошибку при проверке... найти сумму n элементов бесконечного ряда с помощью оператора цикла с предварительным условием... y=-4+8-16+32-64..... вот код: var i,j,zn,n:integer; s:real; begin clrscr; writeln; writeln('naiti summy elementov riada: y=-4+8-16+32-64...'); writeln(''); writeln('vvedite kolichestvo elementov ryada'); write('N='); readln(n); s:=1; for i:=1 to n do begin zn:=1; for j:=1 to i+1 do begin zn:=zn*(-1); end; s:=s+(-zn*(exp(1+i)*ln(2))); end; writeln('summa ryada s=',s:3:0); readln; end.
|
Всего сообщений: 1 | Присоединился: август 2009 | Отправлено: 28 авг. 2009 22:02 | IP
|
|
paradise
Долгожитель
|
Цитата: malova83 написал 28 авг. 2009 22:02 Помогите добить задачку....что то не выходит...выдает ошибку при проверке... найти сумму n элементов бесконечного ряда с помощью оператора цикла с предварительным условием... y=-4+8-16+32-64..... вот код: var i,j,zn,n:integer; s:real; begin clrscr; writeln; writeln('naiti summy elementov riada: y=-4+8-16+32-64...'); writeln(''); writeln('vvedite kolichestvo elementov ryada'); write('N='); readln(n); s:=1; for i:=1 to n do begin zn:=1; for j:=1 to i+1 do begin zn:=zn*(-1); end; s:=s+(-zn*(exp(1+i)*ln(2))); end; writeln('summa ryada s=',s:3:0); readln; end.
нечто странное у Вас в цикле... program help; var i, n: integer; s, sum: real; begin writeln('Please, enter n: '); write('n = '); readln(n); sum:=0; for i := 1 to n do begin sum := sum + power(-1,i)*power(2,i+1); end; writeln(sum:3:0); end.
|
Всего сообщений: 428 | Присоединился: ноябрь 2008 | Отправлено: 29 авг. 2009 2:32 | IP
|
|
Holden
Новичок
|
Ребят помогите пожалуйста решить задачку!!! Описать функцию, которая находит среднее арифметическое значение всех элементов сформированного непустого списка. Там нужно еще составить какой то динамический список!
|
Всего сообщений: 2 | Присоединился: сентябрь 2009 | Отправлено: 7 сен. 2009 13:47 | IP
|
|
Dale
Участник
|
Holden, дайте полное условие задачи
|
Всего сообщений: 139 | Присоединился: май 2009 | Отправлено: 8 сен. 2009 2:20 | IP
|
|
Euforia091
Новичок
|
люди, спасите!!помогите!! компиляция проходит, а программа не выполняется. в чем дело? :`(
|
Всего сообщений: 1 | Присоединился: сентябрь 2009 | Отправлено: 12 сен. 2009 15:05 | IP
|
|
Dale
Участник
|
Euforia091 Тут два варианта: 1) Вы жмете f9, а надо ctrl+f9 2) Напишите в начале программы перед разделом var uses crt; а перед последним end ом - readkey; или можно посмотреть результат в меню debud->output.
|
Всего сообщений: 139 | Присоединился: май 2009 | Отправлено: 12 сен. 2009 17:42 | IP
|
|
zhumadilov
Новичок
|
ПОмогите пожалуйста а то никак немогу решить Сформировать вектор В как среднее арифметическое положительных элементов каждого столбца Матрица А {0,5 9,7 8,4 6,2 } А= { 9,57 -2,6 0,4 7,3 } {12,7 0,8 -6 3,2} Задачу нужно решить на языке Турбопаскаль Pascal Заранее огромнейшее спасибо
|
Всего сообщений: 2 | Присоединился: сентябрь 2009 | Отправлено: 18 сен. 2009 20:27 | IP
|
|
MzSpider
Новичок
|
Вот задача мб кто решит? я ее даже понять не могу )) олимпиадная задача внешняя ссылка удалена
|
Всего сообщений: 19 | Присоединился: июль 2009 | Отправлено: 20 сен. 2009 13:04 | IP
|
|
Dale
Участник
|
zhumadilov Примерно так const m=3; n=7; var a:array[1..m,1..n]of integer; b:array[1..m] of real; i,j,c,d:integer; ......... for i:=1 to m do begin c:=0; d:=0; for j:=1 to n do begin if a[i,j]>=0 then begin c:=c+a[i,j]; d:=d+1; end; b[ i ]:=c/d;{делим сумму положительных элементов на их количество} end;{for j} end;{for i} ....... (Сообщение отредактировал Dale 21 сен. 2009 8:30)
|
Всего сообщений: 139 | Присоединился: май 2009 | Отправлено: 21 сен. 2009 8:30 | IP
|
|
|