М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
jogangaj
jogangaj
17.03.2020 00:05 •  Информатика

Написать программу на Ассемблере для компилятора NASM, которая складывала бы, вычитала, умножала и делила два числа.

👇
Открыть все ответы
Ответ:
uliana3murrr
uliana3murrr
17.03.2020

Объяснение:

1. Числа Фибоначчи

function Fibon (n:integer):longint;

var fib_1,fib_2,fib:longint;

i :integer;

begin

if (n<3) then Fibon:=1

else

begin

fib_1 := 1;

fib_2 := 1;

i:=2;

while i<n do

begin

fib:=fib_1+fib_2;

fib_1:=fib_2;

fib_2:=fib;

i:=i+1;

end;

Fibon := fib;

end;

end;

begin

writeln('Fib(',40,') = ',Fibon(40));

readln;

end.        

Числа кратные к

program sumkr;

var

 n,i,r,k: integer;

 sum: longint;

begin

write('Введите число n (1<=n<=4): ');

readln(n);

r:=1;

for i:=1 to n-1 do

r:=r*10;

write('Введите число k: ');

readln(k);

i:=r;

while i <= r*10-1 do

begin

if i mod k=0 then sum:=sum+i;

i:=i+1;

end;

writeln('Сумма чисел от ',r,' до ',r*10-1,' кратных ',k,' = ',sum);

readln;

end.

===

3. НОК

program NOK_a_b;

var a, b, nod, nok,p: integer;

begin

writeln('Введите а и в ');

readln(a, b);

p:=a*b;

while (a <> 0) and (b <> 0) do

if a > b then a := a mod b

else b := b mod a;

nod := a + b;

nok:=p div nod;

writeln('НОК= ', nok);

readln;

end.

4,5(71 оценок)
Ответ:
erteeq
erteeq
17.03.2020

Объяснение:

Тут смысла нет передавать массив в качестве параметра, т.к. он описан как const .

Текст будет примерно такой

const x=0.2;

 y :array[1..9]of real=(0.1,0.2,-0.3,-0.04,5,6,-7.03,8,9);

function t(u:real):real;

begin

t:=sin(u)+cos(u);

end;

function p(a,b:integer):real;

var i:integer; d:real;

begin

d:=1;

for i:= a to b do

d:=d*y[i];

p:=d;

end;

Begin

cls;

writeln('z(x,y)=',exp(ln(t(x))*3)/p(1,9)+sqr(p(1,9))/exp(ln(t(x))*2/3):6:4);

readln;

End.

Если нужно массив передать в функцию, то его описывают как новый тип переменной и передают

Вот так, например:

const z=9;

type mas=array[1..z] of integer;

var

u :mas;

i:integer;

// Вывод массива на экран

// a -массив n-размер,text - что хотим написать

procedure showmas(b:mas;n:integer;text:string);

var

i:integer;

begin

writeln(text);

for i:=1 to n  do

write(b[i],' ');

readln;

end;

begin

for i:=1 to 9 do

u[i]:= random(20);

showmas(u,10,'Исходный массив u');

end.

4,7(23 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ