1. Объявлен целочисленный массив из 100 элементов, проиндексированных от 0 до 99.
2. Будет выведено p=2s=0
В параметрах процедуры Incr отсутствует var перед q, поэтому значение параметра при выходе из процедуры не изменится. Процедура увеличивает на 1 значение глобальной переменной p. Первоначально р=0 и два вызова процедуры сделают р=2. Значения s, как было выше пояснено, процедура не изменит, поэтому оно так и останется нулевым.
Var a,b,c:integer;
begin
writeln('Вычесление периметра треугольника.');
writeln('Введите значение стороны a.');
readln(a);
writeln('Хорошо. Вы ввели значение для a: ',a);
writeln('Введите значение стороны b.');
readln(b);
writeln('Хорошо. Вы ввели значение для b: ',b);
writeln('Введите значение стороны c.');
readln(c);
writeln('Хорошо. Вы ввели значение для c: ',c);
if a<0 then
writeln('Данный треугольник не существует')
else
if b<0 then
writeln('Данный треугольник не существует')
else
if c<0 then
writeln('Данный треугольник не существует')
else
if a+b<c then
writeln('Данный треугольник не существует')
else
if a+c<b then
writeln('Данный треугольник не существует')
else
if b+c<a then
writeln('Данный треугольник не существует')
else
writeln('Периметр треугольника: ',a+b+c);
end.