IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> вопрос по массивам
amebka
сообщение 13.03.2006 15:25
Сообщение #1


Гость






Задание:
Вводится размерность одномерного массива A(N) и его элементы. Вывести на экран сумму составных чисел среди элементов массива.
Вот программка:
Исходный код

var
i,k,s,n:integer;
a:array[1..n] of integer;
begin
readln(n);
i:=1;
s:=0;
for i = 1 to n do
begin k:=0;
k:=a(i)mod2;
if k=0 then goto m1
else k:=a(i)mod3;
if k=0 then goto m1
else k:=a(i)mod5;
if k=0 then goto m1
else k:=a(i)mod7;
if k=0 then goto m1;
m1: s:=s+a(i);
end;
writeln (s);
end.


Теги !

Но она даже не компилируется (в месте, отмеченном красным цветом)...
Как думаете, почему? и вообще, как она (программка)? действенная?

Сообщение отредактировано: klem4 - 13.03.2006 18:40
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Ozzя
сообщение 14.03.2006 17:31
Сообщение #2


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


Const
n=5;
var
k,i,s : Integer;
p: boolean;
a: array [1..N] of Integer;

begin
for i:=1 to N do
readln(a[i]);
s:=0;
for i:=1 to N do
begin
{ Проверка }
p:=true;
k:=2;
while p and (sqr(k)<=n) do
if a[i] mod k=0 then
p:=false
else
k:=k+1;
{ Подсчет суммы }
if p then
s:=s+a[i];
end;
Writeln('Summa = ',s);
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
amebka
сообщение 14.03.2006 17:35
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 19
Пол: Женский
Реальное имя: Анна

Репутация: -  0  +


Цитата(Ozzя @ 14.03.2006 17:31) *

Const
n=5;
var
k,i,s : Integer;
p: boolean;
a: array [1..N] of Integer;

begin
for i:=1 to N do
readln(a[i]);
s:=0;
for i:=1 to N do
begin
{ Проверка }
p:=true;
k:=2;
while p and (sqr(k)<=n) do
if a[i] mod k=0 then
p:=false
else
k:=k+1;
{ Подсчет суммы }
if p then
s:=s+a[i];
end;
Writeln('Summa = ',s);
end.


при вводе 1, 2, 3, 4, 5 выдает 9... а должна выдать 4...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
amebka   вопрос по массивам   13.03.2006 15:25
volvo   Потому, что ты пытаешься задать размер массива чер...   13.03.2006 15:43
Гость   Спасибо большое) я бы и не догадалась... Теперь он...   13.03.2006 16:27
мисс_граффити   for i:= 1 to n do двоеточие забыли k:=a[i] mod 2;...   13.03.2006 18:00
volvo   klem4, ТЕГИ это прекрасно, но попробуй теперь проч...   13.03.2006 18:36
klem4   Хм действительно с pascоde какие-то проблемы тут ....   13.03.2006 18:41
amebka   Спасибо большое ... программа скомпилировалась, но...   14.03.2006 9:49
volvo   Давай ты не будешь врать, ОК? var i,k,s,n:intege...   14.03.2006 9:54
amebka   Это - не будет компилироваться ни при каких услови...   14.03.2006 10:03
volvo   Правильно, что не уверена... Откомпилируй программ...   14.03.2006 10:07
amebka   const n_max=100; var i,k,s,n:integer; a:array[1.....   14.03.2006 12:12
Ozzя   for i: = 1 to n do Это тоже не будет компилировать...   14.03.2006 12:27
amebka   const n_max=100; var i,k,s,n:integer; a:array[1.....   14.03.2006 15:22
Ozzя   amebka Но мне проще написать заново, чем в чужом к...   14.03.2006 16:29
amebka   да... мне тоже в чужом коде тяжело разбираться.......   14.03.2006 16:39
Ozzя   Вводишь одно число, затем Enter. Так делала?   14.03.2006 16:41
amebka   Вводишь одно число, затем Enter. Так делала? Сп...   14.03.2006 16:48
Ozzя   через пробел - это в Basic'е. Возможно   14.03.2006 16:54
amebka   Нет, не заработала, хотя я и не понимаю, в чем дел...   14.03.2006 17:05
Ozzя   Не вводим! for i:=1 to n <- забыла...   14.03.2006 17:07
amebka   Хорошо... const n_max=100; var i,k,s,n:integer; a...   14.03.2006 17:13
Ozzя   Проверка: if (a[i] mod 2=0) or ...   14.03.2006 17:14
amebka   Да)) это работает... осталось только сделать огран...   14.03.2006 17:18
volvo   :yes2: const n_max=100; var i,k,s,n:integer; ...   14.03.2006 17:24
Ozzя   Const n=5; var k,i,s : Integer; p: boolean; ...   14.03.2006 17:31
amebka   Const n=5; var k,i,s : Integer; p: boolean;...   14.03.2006 17:35
amebka   Все))) заработало)))))))) Огромное всем спасибо)))...   14.03.2006 17:32
Ozzя   :give_rose: Уфф, ура :good:   14.03.2006 17:33
Ozzя   А 1 и 2 - это простые числа? Еще и их надо отсле...   14.03.2006 17:39
amebka   А 1 и 2 - это простые числа? Еще и их надо отслеж...   14.03.2006 17:43
Ozzя   Const n=5; var k,i,s : Integer; p: boolean; ...   14.03.2006 17:46
amebka   Вот три рабочие программы: const n_max=100; var ...   14.03.2006 17:49
Ozzя   Шампанское в студию! :give_rose:   14.03.2006 17:49
amebka   Шампанское в студию! :give_rose: Отдельное с...   14.03.2006 17:53


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 19.07.2025 2:29
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"