![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
amebka |
![]()
Сообщение
#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 |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата Как думаете, почему? Потому, что ты пытаешься задать размер массива через переменную, а должна быть - константа!const n_max = 100;Дальше - без изменений... |
Гость |
![]()
Сообщение
#3
|
Гость ![]() |
Спасибо большое) я бы и не догадалась...
Теперь он не компелирует в следующем месте... Исходный код const n_max=100; var i,k,s,n:integer; a:array[1..n_max] 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 |
мисс_граффити |
![]()
Сообщение
#4
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
for i:= 1 to n do двоеточие забыли k:=a[i] mod 2; Пробелы. В следующий раз будет ругаться на m1... а вообще лучше бы без goto обойтись... -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
volvo |
![]()
Сообщение
#5
|
Гость ![]() |
klem4, ТЕГИ это прекрасно, но попробуй теперь прочесть обе эти программы!
|
klem4 |
![]()
Сообщение
#6
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
Хм действительно с pascоde какие-то проблемы тут ... codebox вроде нормально
-------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
amebka |
![]()
Сообщение
#7
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Женский Реальное имя: Анна Репутация: ![]() ![]() ![]() |
Спасибо большое ... программа скомпилировалась, но все равно не работает...
конечный вариант выглядит так...
Может, кто-нибудь сможет мне помочь? ![]() |
volvo |
![]()
Сообщение
#8
|
Гость ![]() |
Давай ты не будешь врать, ОК?
var Это - не будет компилироваться ни при каких условиях... Почему - см. сообщение №2 |
amebka |
![]()
Сообщение
#9
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Женский Реальное имя: Анна Репутация: ![]() ![]() ![]() |
Это - не будет компилироваться ни при каких условиях... Извиняюсь ... моя невнимательность ![]() вроде так... (уже не уверена)... const n_max=100; |
volvo |
![]()
Сообщение
#10
|
Гость ![]() |
Цитата вроде так... (уже не уверена)... Правильно, что не уверена... Откомпилируй программу, потом пришлешь полученный вариант... Компилятором работать, я думаю, ни у кого желания нет...k:=a(i) mod 2;тоже не будет компилироваться. Ибо скобки не те... Квадратные нужны. |
amebka |
![]()
Сообщение
#11
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Женский Реальное имя: Анна Репутация: ![]() ![]() ![]() |
Извиняюсь, конечно, за такое количество ошибок... просто я не умею ее из паскаля копировать (пришлось перебивать вручную, поэтому и ляпов столько)... |
Ozzя |
![]()
Сообщение
#12
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: ![]() ![]() ![]() |
for i: = 1 to n do
Это тоже не будет компилироваться. Между : и = пробел. Цитата просто я не умею ее из паскаля копировать 1. Открыть pas-файл блокнотом. 2. Щелкнуть кнопку системного меню, если bp запущен в оконном режиме. Изменить -> Выделить -> Выделить программу -> Нажать enter -> Вставить сюда |
amebka |
![]()
Сообщение
#13
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Женский Реальное имя: Анна Репутация: ![]() ![]() ![]() |
у меня она компилируется, но не работает... я не понимаю почему... |
Ozzя |
![]()
Сообщение
#14
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: ![]() ![]() ![]() |
amebka
Но мне проще написать заново, чем в чужом коде разбираться. ![]() Функция isNotPrime взята из ФАК и переделана. Определяет составное число или нет Const |
amebka |
![]()
Сообщение
#15
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Женский Реальное имя: Анна Репутация: ![]() ![]() ![]() |
да... мне тоже в чужом коде тяжело разбираться.... ( и не работает он у меня что-то (( я ввожу числа массива и ничего не происходит.... (( может, я чего-то не понимаю???
после компиляции нажимаю ctrl+F9 ввожу числа... они вводятся и вводятся... как долго это должно продолжаться, когда массив всего из 5 чисел? |
Ozzя |
![]()
Сообщение
#16
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: ![]() ![]() ![]() |
Вводишь одно число, затем Enter.
Так делала? Сообщение отредактировано: Ozzя - 14.03.2006 16:42 |
amebka |
![]()
Сообщение
#17
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Женский Реальное имя: Анна Репутация: ![]() ![]() ![]() |
|
Ozzя |
![]()
Сообщение
#18
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: ![]() ![]() ![]() |
через пробел - это в Basic'е.
Цитата может заработает... Возможно |
amebka |
![]()
Сообщение
#19
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Женский Реальное имя: Анна Репутация: ![]() ![]() ![]() |
Нет, не заработала, хотя я и не понимаю, в чем дело
![]() вот программа: const n_max=100; Опишу, что моя программа должна была бы делать... хотя и не делает ![]() Начиная с begin... вводим размер массива (n), который не должен превышать 100 вводим данные в массив начинается цикл от первого элемента массива до n-го попадая в цикл кажый элемент проверяется на наличие остатка от деления на числа 2, 3, 5, 7 - это те числа, на которые могут делиться составные числа, кроме как на себя и единицу если при каком-то из делений остаток (k) равен нулю (т.е. данный элемент массива делится на 2, 3, 5 или 7 без остатка), то к сумме (s), которая изначально равна нулю, прибавляется данный элемент массива в конце должна вывестись сумма всех составных чисел данного массива... |
Ozzя |
![]()
Сообщение
#20
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата вводим данные в массив Не вводим! Код for i:=1 to n <- забыла! readln(a[i]); Сообщение отредактировано: Ozzя - 14.03.2006 17:07 |
![]() ![]() |
![]() |
Текстовая версия | 22.07.2025 15:26 |