1) Ошибка может содержаться в любой ветке. Не протестировав все - не узнаешь, а не узнав - не исправишь. Значит в итоге будет кривая программа. Брак то бишь. 2) условия можно вкладывать друг в друга любое число раз, главное не запутаться в них в итоге. Выглядеть это будет например вот так: If a<0 then b:=a/2 else if a=0 then b:=a else b:=a*2; Или так: if a<0 then if (abs(a) mod 2 =0) then b:='отрицательное чётное' else b:='отрицательное нечетное' else b:='положительное'; Главное чётко следить к какому if какое then и особенно какое else. Блок схемы на картинке. Возможна масса других вариантов.
одномерные, просто как синтаксис
type
mas1=array[1,10] as interger
interger это целое число, оно имеет размерность 1 байт
значит от 1 до 10, итого 10 байт памяти будет выделено под массив mas1
eсли пишу mas1[3] то обращусь к 3 элементу массива
массовый присваивает в паскале нет, только по очереди или всеми константами на старте, при инициализации
есть еще двух, трех и прочие многодетные массивы, например для определения координат на плоскости
такие дела, пиши