Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 08.11.2016
Сообщений: 156

Что не так с кодом?

10.11.2016, 19:12. Показов 1891. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот условие:
Даны натуральные числа n, b0,b1,…,bn.Вычислить: f(b0)+f(b1)+…+f(bn), где
f(x)=x^2,если х кратно 3
f(x)=х,если х при делении на 3 дает остаток 1
f(x)=[х/3] в остальных случаях

Вот код:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
const n=3;                                                                    
var                                                                           
b:array[1..n] of real;                                                        
    f,s,i:real;                                                                   
                                                                    
    begin                                                                     
    writeln('vvod elementov');                                               
    for i:=1 to n do                                                          
    readln(b[i]);                                                             
    s:=0;                                                                     
    for i:=1 to n do                                                          
    begin                                                                     
    if b[i] mod 3=0 then f:=sqr(b[i])                                         
    else  if b[i] mod 3=1  then f:=b[i]                                       
    else f:=b[i]/3;                                                           
    s:=s+f;                                                                   
    end;                                                                      
    writeln('cyma',s:2:2);                                                    
    end.

ошибка:[9,9] program.pas: Ordinal type expected
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.11.2016, 19:12
Ответы с готовыми решениями:

Что не так с кодом?
В некоторых видах спортивных состязаний выступление каждого спортсмена независимо оценивается несколькими судьями, затем из всей...

Вычислить сумму ряда с заданной точностью (что не так с кодом?)
По заданию нудно вычислить сумму ряда : 1+3/x^2+5/x^4+7/x^6+... вычисления нужно прекратить, когда новое слагаемое будет меньше 0.0001 ...

Что не так с кодом? ( пытаюсь понять, что не так? )
Есть исходный код. Hook, работает хорошо, но есть минус огромный - перестаёт писать в лог, при открытии программы\игры Фуллскрином. т.е...

26
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
10.11.2016, 19:43
Цитата Сообщение от Владислава77777 Посмотреть сообщение
i:real;
Ты вообще хоть что-то понимаешь что и зачем пишешь???
0
0 / 0 / 0
Регистрация: 08.11.2016
Сообщений: 156
10.11.2016, 19:46  [ТС]
представьте себе да, и что за наезды с кучей восклицательных знаков?

Добавлено через 44 секунды
Puporev, представьте себе да, и что за наезды с кучей восклицательных знаков?
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
10.11.2016, 19:48
Где ты вычитал что счетчик цикла может быть вещественным числом? На тебя не наезжать нужно, а башкой об стену бить.
0
0 / 0 / 0
Регистрация: 08.11.2016
Сообщений: 156
10.11.2016, 19:49  [ТС]
Puporev, во-первых, вычиталА, а во-вторых, тогда помогите мне ее решить
0
Модератор
Эксперт по электронике
 Аватар для ФедосеевПавел
8652 / 4487 / 1669
Регистрация: 01.02.2015
Сообщений: 13,895
Записей в блоге: 12
10.11.2016, 20:47
Измените тип переменной цикла с параметром i на integer.
0
0 / 0 / 0
Регистрация: 08.11.2016
Сообщений: 156
10.11.2016, 20:50  [ТС]
Не помогло, компилятор все равно ругается, проще с нуля написать новую. Но спасибо за подсказку
0
Модератор
Эксперт по электронике
 Аватар для ФедосеевПавел
8652 / 4487 / 1669
Регистрация: 01.02.2015
Сообщений: 13,895
Записей в блоге: 12
10.11.2016, 21:03
Pascal
4
5
  f,s: real;
  i: integer
Добавлено через 8 минут

Не по теме:

Я ещё всех агитирую за форматирование кода.

Если вы используете PascalABC.NET, то у вас в меню Сервис есть пункт Форматировать код.
Если что-то другое, то можно использовать JEDI Code Format - https://www.cyberforum.ru/post7676189.html



Добавлено через 3 минуты
И ещё ошибка - тип элементов массива b должен быть целым (integer) иначе к нему неприменимы операции целочисленного деления.
0
0 / 0 / 0
Регистрация: 08.11.2016
Сообщений: 156
10.11.2016, 21:13  [ТС]
там больше проблем, не только с объявлением типа переменных
0
Модератор
Эксперт по электронике
 Аватар для ФедосеевПавел
8652 / 4487 / 1669
Регистрация: 01.02.2015
Сообщений: 13,895
Записей в блоге: 12
10.11.2016, 21:16
Да ладно?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
program MyProg;
 
const
  n = 3;
var
  b: array[1..n] of integer;
  f, s: real;
  i: integer;
 
begin
  writeln('vvod elementov');
  for i := 1 to n do
    readln(b[i]);
  s := 0;
  for i := 1 to n do
  begin
    if b[i] mod 3 = 0 then
      f := sqr(b[i])
    else if b[i] mod 3 = 1 then
      f := b[i]
    else
      f := b[i] / 3;
    s := s + f;
  end;
  writeln('cyma', s: 2: 2);
end.
Добавлено через 2 минуты
Вместо if при столь малом количестве исходов я бы применил case
Pascal
1
2
3
4
5
6
  case b[i] mod 3 of
  0: f:=...
  1: f:=...
  else
    f:=...
  end;
0
0 / 0 / 0
Регистрация: 08.11.2016
Сообщений: 156
10.11.2016, 21:17  [ТС]
program.cpp:3:9: ошибка: too many decimal points in number
b:array[1..n] of real;
^
program.cpp:7:13: предупреждение: символьная константа слишком длинна для своего типа
writeln('vvod elementov');
^
program.cpp:18:13: предупреждение: многознаковая символьная константа [-Wmultichar]
writeln('cyma',s:2:2);
^
program.cpp:1:7: ошибка: «n» не является именем типа
const n=3;
^
program.cpp:2:1: ошибка: «var» не является именем типа
var
^
program.cpp:4:5: ошибка: «f» не является именем типа
f,s:real;
^
program.cpp:5:6: ошибка: found «:» in nested-name-specifier, expected «::»
i:integer;
^
program.cpp:5:5: ошибка: «i» не является именем типа
i:integer;
^
program.cpp:6:5: ошибка: «begin» не является именем типа
begin
^
program.cpp:8:5: ошибка: expected unqualified-id before «for»
for i:=1 to n do
^
program.cpp:10:5: ошибка: «s» не является именем типа
s:=0;
^
program.cpp:11:5: ошибка: expected unqualified-id before «for»
for i:=1 to n do
^
program.cpp:16:5: ошибка: «s» не является именем типа
s:=s+f;
^
program.cpp:17:5: ошибка: «end» не является именем типа
end;
^
program.cpp:18:12: ошибка: expected constructor, destructor, or type conversion before «(» token
writeln('cyma',s:2:2);
^
program.cpp:19:5: ошибка: «end» не является именем типа
end.
^
0
Модератор
Эксперт по электронике
 Аватар для ФедосеевПавел
8652 / 4487 / 1669
Регистрация: 01.02.2015
Сообщений: 13,895
Записей в блоге: 12
10.11.2016, 21:18
Или этот код тоже для сайта?
0
0 / 0 / 0
Регистрация: 08.11.2016
Сообщений: 156
10.11.2016, 21:19  [ТС]
Цитата Сообщение от ФедосеевПавел Посмотреть сообщение
Вместо if при столь малом количестве исходов я бы применил case
Pascal
1
2
3
4
5
6
* case b[i] mod 3 of
* 0: f:=...
* 1: f:=...
* else
* * f:=...
* end;
а это идея

опять же, проше заново написать, чем исправлять здесь ошибки

Добавлено через 1 минуту
Цитата Сообщение от ФедосеевПавел Посмотреть сообщение
Или этот код тоже для сайта?
Этот код для сайта, но я не преследую цели верного ответа, гораздо важнее понять алгоритм построения кода
0
Модератор
Эксперт по электронике
 Аватар для ФедосеевПавел
8652 / 4487 / 1669
Регистрация: 01.02.2015
Сообщений: 13,895
Записей в блоге: 12
10.11.2016, 21:19
Оба на!

А в чём вы компилируете?
Почему исходники на Pascal имеют расширение cpp?
0
0 / 0 / 0
Регистрация: 08.11.2016
Сообщений: 156
10.11.2016, 21:22  [ТС]
на сайте, встроенный компилятор.
да, я ошиблась в расширении. но ему что-то не нравитсяв этих двух строчках:
f,s:real;
i:integer;
0
Модератор
Эксперт по электронике
 Аватар для ФедосеевПавел
8652 / 4487 / 1669
Регистрация: 01.02.2015
Сообщений: 13,895
Записей в блоге: 12
10.11.2016, 21:25
Вы целиком весь код приведите.
0
0 / 0 / 0
Регистрация: 08.11.2016
Сообщений: 156
10.11.2016, 21:27  [ТС]
const n=3;
var
b:array[1..n] of real;
f,s:real;
i:integer;
begin
writeln('vvod elementov');
for i:=1 to n do
readln(b[i]);
s:=0;
for i:=1 to n do
begin
if b[i] mod 3=0 then f:=sqr(b[i])
else if b[i] mod 3=1 then f:=b[i]
else f:=b[i]/3;
s:=s+f;
end;
writeln('cyma',s:2:2);
end.
0
Модератор
Эксперт по электронике
 Аватар для ФедосеевПавел
8652 / 4487 / 1669
Регистрация: 01.02.2015
Сообщений: 13,895
Записей в блоге: 12
10.11.2016, 21:30
ошибка - тип элементов массива b должен быть целым (integer) иначе к нему неприменимы операции целочисленного деления.
0
0 / 0 / 0
Регистрация: 08.11.2016
Сообщений: 156
10.11.2016, 21:33  [ТС]
компилятор выдал - ошибка времени исполнения
0
Модератор
Эксперт по электронике
 Аватар для ФедосеевПавел
8652 / 4487 / 1669
Регистрация: 01.02.2015
Сообщений: 13,895
Записей в блоге: 12
10.11.2016, 21:38
Какой компилятор?
Что вы вводили?

Добавлено через 1 минуту
Ошибка времени исполнения - это уже не компилятор, а ОС или диагностический код, незаметно для пользователя добавленный компилятором в итоговую программу.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.11.2016, 21:38
Помогаю со студенческими работами здесь

Что не так з кодом?
Что не так? везде код пашет, на этой форме нет.Выкидывает значение парметра, а его не должно быть + не работает фильтр. Private Sub...

Что не так с кодом?
Всем здравствуйте. Программа должна вычислять значение e^(2*x) в точках X∈ шагом h=0,1 и точностью эпсилон=0,00001. При компиляции цикл...

что не так с кодом?
Только начал изучать программирование по книге Прата С. возникли проблемы с упражнениями в конце второй главы, а именно с 5: Напишите...

Что то не так с кодом
Запускаю. Ввожу в edittext 01026071 и всё замечательно работает. Но если после запуска нажимаю на кнопки (те что внизу кода ) то после...

Что не так с кодом?
Задача из Прата: Выполните упражнение 4 из главы 9, но преобразуйте структуру Sales и ассоциированные с ней функции в класс и методы....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru