Делаю все виды работ для ТУСУР! Обращайтесь!
const n = 30;
type vector = array [1..n] of integer;
var a, b, c: vector; k: integer;
Задача. Если векторы a и b различны, то переменной k присвоить их скалярное произведение, иначе в вектор c переписать элементы массива a.
Какая из следующих программ решает эту задачу?
...
if a<>b then k:=a*b else c:=a;
...
...
{t описана как булевская переменная; i имеет тип integer}
t:=true; k:=0;
for i:=1 to n do
if a[i]<>b[i] then t:=false;
if t then c:=a
else for i:=1 to n do k:=k+a[i]*b[i];
...
...
{t описана как булевская переменная; i имеет тип integer}
for i:=1 to n do
if a[i]<>b[i] then t:=false else t:=true;
k:=0;
if t then for i:=1 to n do c[i]:=a[i] else for i:=1 to n do k:=k+a[i]*b[i];
...