Помощь - Поиск - Пользователи - Календарь
Полная версия: Массив и элементы!
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Вернант
Задан массив B из 15 элементов целого типа.Посчитать количество четных элементов
массива.
AlaRic
Код
program forum;
uses wincrt;
const n=15;
type a=array[1..n] of integer;
var b:a;
i:word;
count:integer;
begin
count:=0;
writeln('ввести массив');
for i:=1 to n do read(b[i]);
for i:=1 to n do
if (b[i] mod 2=0) then count:=count+1;
writeln('кол-во',count);
end.
Gid
Зафиг у тебя i типа word
Код
const n=15;
type
 mass:array[1..n]of integer;
var
i,s:integer;
mas:mass;
begin
writeln('Введите символы массива  ');
for i:=1 to n do read(mas[i]);
s:=0;
for i:=1 to n do if mas[i] mod 2=0 then s:=s+1;
writeln('Чётных чисел-  ',s);
end.
AlaRic
Цитата
Зафиг у тебя i типа word!
Можно вообще byte поставить - всего 15 элементов!
Gid
Ну ладно... Тогда зафиг у тебя так много переменных?
AlaRic
Тебе не угодишь smile.gif  Массив делаю через тип, так как препод говорит, что так лучше, а count-счетчик!
Gid
А чё такое unit wincrt? Это типа crt для windows?
AlaRic
Точно...а что?
Gid
Да я просто не знал, что это за фигня, но по названию догадался! 8)
dark0ut
Цитата
Да я просто не знал, что это за фигня, но по названию догадался! 8)

молодец!
___ALex___
Gid
молодей хрюндель теперь можешь взять с полки пряник !
___ALex___
Код
program forum;
const n=15;
type a=array[1..n] of integer;
var b:a;
i, count:Byte;
begin
writeln('ввести массив');
for i:=1 to n do begin
read(b[i]);
if (b[i] mod 2=0) then count:=count+1;
end;
writeln('кол-во',count);
ReadLn
end.


вот так лучше ;)
Clane
Прям решения на любой вкус.... Мне чтоли свое запостить для полного счастия... ;D ;D ;D
___ALex___
Код
program forum;  
var
x: Integer;  
i, count:Byte;  
begin  
writeln('ввести массив');  
for i:=1 to n do begin
read(x);  
if x mod 2 = 0 then Inc(count);  
end;
writeln('кол-во',count);  
ReadLn
end.

так куда лучше чем все предыдущие
___ALex___
Код
program forum;  
var
x: Integer;  
i, count:Byte;  
begin  
writeln('ввести массив');  
for i:=1 to 15 do begin
read(x);  
if x mod 2 = 0 then Inc(count);  
end;  
writeln('кол-во',count);  
ReadLn  
end.

PS по жизни чё нить забудешь
AlaRic
Код
program forum;
type mini=0..15;  
var  
x: Integer;    
i, count:mini;
begin    
writeln('ввести массив');    
for i:=1 to 15 do begin
read(x);    
if x mod 2 = 0 then Inc(count);    
end;  
writeln('кол-во',count);    
ReadLn  
end.


PS Integer для факториала хиловат.
bonnyka
Цитата
Тебе не угодишь smile.gif  Массив делаю через тип, так как препод говорит, что так лучше, а count-счетчик!

если я не ошибаюсь массив делают через тип для того, чтобы потом можно было его использовать в функциях и процедурах, так или не так? smile.gif
Clane
Не понял  ??
AlaRic
Цитата
если я не ошибаюсь массив делают через тип для того, чтобы потом можно было его использовать в функциях и процедурах, так или не так? smile.gif

Необязательно. Тип также делают для работы с несколькими массивами.Например:
type A=array[1..5] of integer;
A1=array[1..4] of A;
var B,C:A;
D:A1;
PS Хотя мне кажется, что наш препод(директор) немного не в себе!
___ALex___
причём здесь процедуры и ф-ции
тип объявляют для того чтобы потом каждый раз одно и тоже не писать и в некоторых других случаях
удобно это
Ivs
Цитата
Необязательно. Тип также делают для работы с несколькими массивами.Например:
type A=array[1..5] of integer;
A1=array[1..4] of A;
var B,C:A;
D:A1;
PS Хотя мне кажется, что наш препод(директор) немного не в себе!


Это у тебя получается обычный двумерный массив, тоже самое что a1: array[1..4,1..5] of integer;
массивы нужно объявлять в тип для того чтобы они правильно передовались в процедуры и функции,
так что согласен с  bonnyka.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.