Vb
dim matt() as integer
dim x,y as integer
x=5
y=5
redim matt(x,y)
randomize
for a as integer = 0 to x
for b as integer = 0 to y
matt(x,y)= (rnd()*88)+11
next
next
dim i,z as integer
do
matt(i,z)=0
i+=1
z+=1
loop until (i=x and z=y)
<span>Uses crt;
var a,b,c:integer;
begin
read(a);
read(b);
read(c);
if ((a+b)>c) and ((a+c)>b) and ((b+c)>a) then
begin
if ((a=b) and (b<>c)) or ((a=c) and (c<>b)) or ((b=c) and (c<>a)) then writeln('Triangle is isosceles');
if (a=b) and (b=c) and (a=c) then writeln('Triangle is equilateral');
if (a<>b) and (a<>c) and (b<>c) then writeln ('Triangle is scalene');
end
else writeln('Triangle is invalid');
end.</span>
Из условия нам известно, что ввод завершается числом ноль. Информация о количестве чисел требуется только если их запоминать в массиве, но у нас однопроходный алгоритм, массив не нужен, поэтому про "1000 чисел" благополучно забываем. Числа целые, и <span>по модулю не превышают 30 000, следовательно им надо отводить двухбайтный тип integer, в в котором диапазон представления чисел [-32 768 ; 32 767].
"Нечетные числа, кратные трем" - это такие, у которых остаток от деления на два ненулевой, а остаток от деления на три нулевой. Поскольку числа целые, то и деление, конечно же, целочисленное.
Длина последовательности n - это просто счетчик количества прохождений цикла за вычетом единицы, потому что последний проход по циклу будет при вводе нуля, а его учитывать не надо. В другом счетчике k мы накапливаем количество чисел, для которых выполнилось рассмотренное выше условие "нечетные числа, кратные трем".
</span>var
n,k,m: integer;
begin
Writeln('Вводите целые числа, для окончания введите 0');
n:=0; k:=0;
repeat
Read(m); Inc(n);
if (m mod 2 <> 0) and (m mod 3 = 0) then Inc(k)
until m=0;
Writeln('Введено чисел- ',n-1);
Writeln('Нечетных, кратных трем- ',k)
end.
<em><u>Тестовое решение:</u></em>
Вводите целые числа, для окончания введите 0
-5
12
8
27
-18
14
-33
7
0
Введено чисел- 8
Нечетных, кратных трем- 2