Статистика |
Онлайн всего: 1 Гостей: 1 Пользователей: 0 |
|
1278.
trib
(24.12.2006 18:55)
0
спасибки,нашел на сайте кое-что интересное :)
|
1277.
Денис
(24.12.2006 13:45)
0
нужна помощь!!! В матрице имеется столбец, сумма элементов которого равна нулю. Необходимо заменить его элементы на значение максимума, найденного в чётных строках ***** вычисления должны быть сделаны на ассемблере, а ввод и вывод на паскале
Ответ: Не все понятно... Но вот вариант. Может то, что нужно? --------- uses Crt; const N = 10; N_zerou = N div 2; max = 101; type TMatr = array[1..N, 1..N] of Word;
procedure FillMatr(var m: TMatr); var i, j: Integer; begin for i:=1 to N do for j:=1 to N do m[i,j]:=Random(max); for i:=1 to N do m[i, N_zerou]:=0; end;
procedure DoMatr(var m: TMatr); assembler; asm les si, m {поиск максимального} xor bx, bx {в BX будет максимальный элемент} xor dx, dx {счет строк} @@0: mov cx, N @@1: mov ax, es:[si] cmp ax, bx jle @@2 mov bx ,ax @@2: inc si inc si LOOP @@1 inc dx inc dx add si, N*2 cmp dx, N jb @@0 mov ax, bx mov cx, N @@3: les di, m add di, N_zerou*2-2 @@4: stosw add di, N*2-2 LOOP @@4 end;
procedure ShowMatr(m: TMatr); var i, j: Integer; begin for i:=1 to N do begin for j:=1 to N do Write(m[i,j]:6); WriTeln end; end;
var matr: TMatr; BEGIN ClrScr; FillMatr(matr); ShowMatr(matr); WriteLn; DoMatr(matr); ShowMatr(matr); END.
|
1276.
Гость
(24.12.2006 12:49)
0
Help Me!
Ввести x и вычислить y=cosx+cosx(квадрат)+cosx(куб)+...+cos(30степень)
Ответ: Вот вариант: -------------- var x, xbuf, sum: extended; i: Integer; BEGIN Write(''Введите X: ''); ReadLn(X); xbuf:=1; sum:=0; for i:=1 to 30 do begin xbuf:=xbuf*X; sum:=sum + cos(xbuf); end; WriteLn(sum); END.
|
1275.
В
(21.12.2006 11:04)
0
(в предыдущем моем сообщении табличка значений должна была быть, но получилось некрасиво, так что поясню; четыре столбца: первый - х(Excel), второй - значение ATAN2(Excel), третий и четвертый - х, ATAN2 в Pascal)
Ответ: Я понял :)) Можно написать так, чтобы при вычислении арктангенса брать абсолютные значения Y и X, находить квадрант и добавлять-прибавлять pi, pi/2
|
1274.
В
(20.12.2006 21:34)
0
Подскажите, пожалуйста, если не затруднит Вас, как в Turbo Pascal записать математическое выражение, которое в Excel выглядит как ATAN2(x;4)? ;)Или мне стоит какой-нить учебник тригонометрии полистать, раз использование arctan(4/x) дает верные результаты только при x<0?
Ответ: 1) Учебники никому еще не мешали. 2) А что именно нужно-то? Если аналог ATAN2(x;4), то вот он: function ATAN2(x, y: real):real; begin if abs(x) = 0 then ATAN2:= pi/2 {чтобы избежать деления на 0} else ATAN2:=ArcTan(y/x) end;
BEGIN WriteLn(ATAN2(10,3):10:6); END. Запустите и убедитесь, что совпадает с Excel
|
1273.
(20.12.2006 20:27)
0
t-функция от двух строк, которые выше и ниже t=.
Ответ: Понятно
|
1272.
Романыч
(20.12.2006 20:26)
0
Доброго время суток! Помогите и мне?
Даны натуральные числа K, l, m, действительные числа X1..Xk; Y1..Yl; Z1..Zm. Получить: (max(Y1..yl)+max(Z1..Zm))/2 при max(X1..Xk)>0 t= 1+(max(X1..Xk)) в противном случае
Ответ: const K = 10; L = 15; M = 20; var x: Array[1..K] of real; y: Array[1..L] of real; z: Array[1..M] of real; imaxX, imaxY, imaxZ: integer; t: Real; i: Integer; BEGIN WriteLn(''----------------''); {Заполнение массивов. Чтобы получить отрицательные Х, уберите К/2, но знак "минус" сохраните} for i:=1 to K do x[i]:=K/2 - K*random; for i:=1 to L do y[i]:=L/2 - L*random; for i:=1 to M do z[i]:=M/2 - M*random; WriteLn(''X:''); for i:=1 to K do Write(x[i]:10:5); WriteLn; WriteLn(''Y:''); for i:=1 to L do Write(y[i]:10:5); WriteLn; WriteLn(''Z:''); for i:=1 to M do Write(z[i]:10:5); Writeln; {поиск максимальных} imaxX:=1; for i:=2 to K do if x[i] > x[imaxX] then imaxX:=i; imaxY:=1; for i:=2 to L do if y[i] > y[imaxY] then imaxY:=i; imaxZ:=1; for i:=2 to M do if z[i] > z[imaxZ] then imaxZ:=i; WriteLn(''maxX='',x[imaxX]:10:5,'' maxY='',y[imaxY]:10:5, '' maxZ='',z[imaxZ]:10:5); if x[imaxX] > 0 then t:=(y[imaxY] + z[imaxZ])/2 else t:= 1 + x[imaxX]; WriteLn(''t='',t:10:5); END.
|
1271.
(18.12.2006 19:33)
0
Помогите с программой: дана некоторая последовательность С. Найти максимальный номер i при котором выполнено нижеследующее условие: c1=1!/3 c2=2!/4 c3=3!/5 ci<3.0e+10 1,2,3,i-индексы перед С
Ответ: Простейшее решение: {$N+} const eps = 3E10; var i: Integer; fact: extended; BEGIN i:=1; fact:=1; while fact/i < eps do begin inc(i); fact:=fact*i; end; writeLn((i-1):8,'' '',fact/i/(i-1)); END. Вычитаем и делим, так как один раз увеличили i зря
|
1270.
MaX
(12.12.2006 11:36)
0
====================== В принципе нет ничего сложного, только возни много, а времени тоже нет. К какому сроку? ==================================
Ну, :) по возможности к следующей неделе :))) к понедельнику, ко вторнику :)
|
1269.
MaX
(07.12.2006 19:14)
0
Люди, если кто знает как написать, или можт кто видил пошожие проги, помогите их найти, оч надо, сессия горит:((((((((
Задача №1
http://foto.mail.ru/mail/moe_mbilo/10/i-11.jpg
Летает самолёт по овальной траектории (по кругу, постоянно, не очень быстро), внизу стоит пушка( пушка должна поварачиваться на заданный угол..) Т.е. Мы должны ввести угол, пушка должна выстрелить и либо попасть в самолет, либо снаряд пролетает мимо Выход из программы по нажатию "ESC"
Задача №2
Задание 2
http://foto.mail.ru/mail/moe_mbilo/10/i-12.jpg
Плавает корабль ( точно заданной траектории нет, движится постоянно), внизу стоит пушка( пушка должна поварачиваться на заданный угол..) Т.е. Мы должны ввести угол, пушка должна выстрелить и либо попасть в корабль, либо снаряд пролетает мимо. Выход из программы по нажатию "ESC"
Задача №3
Задание 3
http://foto.mail.ru/mail/moe_mbilo/10/i-13.jpg
Тут , надо нарисовать треугольник ( Большой)... по его сторонам должен двигаться маленький треугольник, при переходе через углы, маленький треугольник должен менять цвет .. Выход из программы, также по нажатию "ESC"
Заранее спасибо :)
Ответ: В принципе нет ничего сложного, только возни много, а времени тоже нет. К какому сроку?
|
1268.
Deimos
(04.12.2006 20:25)
0
народ, помогите плиз задачку решить. Дан массив NxN (вывести его случайным образом) поменять местами: а)максимальный элемент из отрицательных и минимальный из положительных б)2 и 4 столбцы в)строки с максимальной и минимальной суммой квадратов
|
1267.
Африка
(04.12.2006 09:52)
0
Я тут дурака на паскале написал как ешо можно к вам отправить?
Ответ: Спасибо. Размещено в разделе "Игра" под номером 19
|
1266.
Роман
(01.12.2006 08:50)
0
Спасибо за сайт, иду щас на олимпиаду, взял шпаргалки с сайта =)Автору совет, садись на платный хостинг или на бесплатный с пшп. Я думаю пшп ты знаешь точно. И гостевая будет хорошая. Ещё раз спс.
Ответ: Да, нам часто это советуют, но наше общее мнение - пусть таким простым и будет. Злые мы :D
|
1265.
Мария
(29.11.2006 17:29)
0
Как упорядочить целый массив [4,5] по возрастанию элементов первой строки ??? : <
Ответ: Может так? ----------- const n = 4; m = 5; var a: array [1..n, 1..m] of integer; i, j, k: Integer; temp: Integer; BEGIN WriteLn(''--------------''); for i:=1 to n do for j:=1 to m do a[i,j]:=random(100);
{показ} for i:=1 to n do begin for j:=1 to m do Write(a[i,j]:8); WriteLn end;
{используем простейший метод пузырьковой сортировки} for i:=2 to m do begin for k:=i to m do if a[1, k] < a[1, k-1] then for j:=1 to m do begin temp :=a[j, k]; a[j, k] :=a[j, k-1]; a[j, k-1]:=temp end; end;
{показ} Writeln; for i:=1 to n do begin for j:=1 to m do Write(a[i,j]:8); WriteLn end; END.
|
1264.
Гамовер
(28.11.2006 16:57)
0
=) а мои лабы кривые?)) сделайте пож-та) а то мну к сессии е допустят (((
to YaPilula РОЛ! лучший провайдер! А лучше выделенку ставь) стрим)) хотя сам я на мопеде тоже сижу)
|
|
|
|