Dale
Участник
|
Цитата: Defenishion написал 10 окт. 2009 10:37 дано натуральное число n,действительная матрица размера n x 9. Найти среднее арифметическое каждого из столбцов,имеющих чётные номера. Program xz; const n=9; Var i,j,k:integer; C:array[1..n,1..9] of integer; s,s1,Sar:real; begin s:=1;k:=0; for i:=1 to 9 do begin for j:=1 to n do s1:=s+C[i,j]; k:=k+1; Sar:=s1/k; writeln ('Sar=',sar:5:2); end; end. Где надо сделать что бы считалось с.ар только чётных столбцов (Сообщение отредактировал Defenishion 10 окт. 2009 20:02) (Сообщение отредактировал Defenishion 10 окт. 2009 20:02)
for i:=1 to 9 do begin s:=0;k:=0; for j:=1 to n do if (j mod 2=0) then begin s:=s+c[i,j]; k:=k+1; end; Sar:=s/k; writeln("Столбец ",i, " среднее арифметическое - ",Sar:5:2); end;{for i} Число i четное, если i mod 2=0 (Сообщение отредактировал Dale 12 окт. 2009 15:58)
|
Всего сообщений: 139 | Присоединился: май 2009 | Отправлено: 12 окт. 2009 15:39 | IP
|
|
Dale
Участник
|
Цитата: MaJlbBuHa написал 12 окт. 2009 0:28 помогите пожалуйста еще с одной задачей сформировать массив случайными числами из промежутка[-9;18] удалить первый отрицательный элемент Отрицательный элемент понятно как искать (<0) а как удалить только первый отрицательный элемент? Заранее спасибо
Наверное, нужно порсто сдвинуть эллементы. т.е. например, у нас массив mas[1..n] Вы нашли индекс отр. эллемента, пусть он равен k Тогда: for i:=k to n-1 do mas[ i ]:=mas[i+1] (Сообщение отредактировал Dale 12 окт. 2009 15:49)
|
Всего сообщений: 139 | Присоединился: май 2009 | Отправлено: 12 окт. 2009 15:48 | IP
|
|
Dale
Участник
|
Цитата: Defenishion написал 10 окт. 2009 10:15 всё правильно толька заместь х i
Тогда попробуйте написать общую формулу энного члена ряда У меня не получилось. Исходя из первых двух, последний должен быть 1/(x^2+n). (Сообщение отредактировал Dale 12 окт. 2009 16:46)
|
Всего сообщений: 139 | Присоединился: май 2009 | Отправлено: 12 окт. 2009 16:41 | IP
|
|
Adrammelech
Новичок
|
Цитата: MaJlbBuHa написал 12 окт. 2009 0:28 помогите пожалуйста еще с одной задачей сформировать массив случайными числами из промежутка[-9;18] удалить первый отрицательный элемент Отрицательный элемент понятно как искать (<0) а как удалить только первый отрицательный элемент? Заранее спасибо
uses crt; var n,i,j:integer; a:array[ 1..100 ] of integer; begin clrscr; randomize; write('Введите размерность массива: '); readln(n); for i:=1 to n do a[ i ]:=random(27)-9; for i:=1 to n do write(a[ i ]:3,';'); for i:=1 to n do if a[ i ]<0 then begin for j:=i to n-1 do a[ j ]:=a[ j+1 ]; n:=n-1; break; end; writeln; for i:=1 to n do write(a[ i ]:3,';'); readkey; end.
|
Всего сообщений: 21 | Присоединился: сентябрь 2009 | Отправлено: 12 окт. 2009 16:47 | IP
|
|
MaJlbBuHa
Новичок
|
спасибо за помощь
|
Всего сообщений: 48 | Присоединился: январь 2009 | Отправлено: 12 окт. 2009 17:20 | IP
|
|
Adrammelech
Новичок
|
Цитата: SleepLess написал 11 окт. 2009 18:27 люди помогите пожалуста с задачями : Вычислить сумму 20 первых элементов ряда 19 f=1+x+x^2/2+...+x^19/19=1+ S x^i/i. i=1 Для определения x^i использовать прием накопления произведения, т.е. x^i=x^(i-1)x.
uses crt; var i,n,x:integer; x1:longint; s:real; begin clrscr; n:=19; write('Введите значение x: '); readln(x); s:=1+x; x1:=x; for i:=2 to n do begin x1:=x1*x; s:=s+x1/i; end; writeln(s:15:3); readkey; end. На счет второй задачи: последовательности заполняются рандомно неповторяющимися чилами, а потом требуется проверить есть ли все члены последовательности А в последовательности В, так или я непрвильно понял? На счет последней: что значит утроеные нечетные? (Сообщение отредактировал Adrammelech 12 окт. 2009 17:42)
|
Всего сообщений: 21 | Присоединился: сентябрь 2009 | Отправлено: 12 окт. 2009 17:41 | IP
|
|
ilya
Новичок
|
Помогите пожалуйста написать задачу: Цыкл с переадресацией Компоненты действительного вектора Х (х1,х2...х20), начиная с шестой по десятую включительно, а также все, начиная с пятнадцатой, заменить их квадратами (Сообщение отредактировал ilya 12 окт. 2009 19:33)
|
Всего сообщений: 5 | Присоединился: октябрь 2009 | Отправлено: 12 окт. 2009 19:22 | IP
|
|
Dale
Участник
|
ilya Можно так: var X:array[1..20] of integer; .... i:=6; while i<=20 do begin if i=11 then i:=15; X[ i ]:=sqr(x[ i ]); i:=i+1; end; Еще можно так: for i:=1 to 20 do if (((i>=6) and (i<=10)) or (i>=15)) then x[ i ]:=sqr(x[ i ]); Ну и наконец, можно двумя циклами: for i:=6 to 10 do x[ i ]:=sqr(x[ i ]); for i:=15 to 20 do x[ i ]:=sqr(x[ i ]); (Сообщение отредактировал Dale 13 окт. 2009 17:19)
|
Всего сообщений: 139 | Присоединился: май 2009 | Отправлено: 13 окт. 2009 12:46 | IP
|
|
|