29.04.2017, 22:21 [+3 UTC]
в нашей команде: 1 927 чел. | участники онлайн: 5 (рекорд: 21)

:: РЕГИСТРАЦИЯ

:: консультации

:: задать вопрос

:: все разделы

:: правила

:: новости

:: участники

:: доска почёта

:: форум

:: блоги

:: поиск

:: статистика

:: наш журнал

:: наши встречи

:: наша галерея

:: отзывы о нас

:: поддержка

:: руководство

Версия системы:
7.41 (25.02.2017)

Общие новости:
23.02.2017, 09:51

Форум:
28.04.2017, 08:08

Последний вопрос:
29.04.2017, 13:29

Последний ответ:
29.04.2017, 15:04

Последняя рассылка:
29.04.2017, 21:45

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
16.10.2009, 14:50 »
PsySex
Спасибо, особенно интересно было почитать статьи на блоге, хорошие ссылки. [вопрос № 173270, ответ № 255470]
29.12.2009, 04:04 »
Грамотник Игорь
Спасибо за полезные советы. [вопрос № 175616, ответ № 258131]

РАЗДЕЛ • Pascal / Delphi / Lazarus

Создание программ на языках Pascal, Delphi и Lazarus.

[администратор рассылки: Зенченко Константин Николаевич (Модератор)]

Лучшие эксперты в этом разделе

Зенченко Константин Николаевич
Статус: Модератор
Рейтинг: 283
mklokov
Статус: 4-й класс
Рейтинг: 87
Delph
Статус: 1-й класс
Рейтинг: 18

Перейти к консультации №:
 

Консультация онлайн # 63702
Раздел: • Pascal / Delphi / Lazarus
Автор вопроса: Das_Kain
Отправлена: 22.11.2006, 12:37
Поступило ответов: 2

Помогите решить задачу. При решениии выдается сообщение 'type mismatch'. Текст задачи:
Составьте программу, проверяющую является ли последовательность из 10 чисел вводимых с клавиатуры :
1)арифметической;
2)геометрической.
Когда я решал то разбил на 2 части. В первой проверял арифметическую прогрессию.Листинг:
program labrab4B;
const n=10;
var
A:array[1..10] of real;
s1,s2,i:byte;
begin
for i:=1 to 10 do
begin
writeln('BBegute 10 chisel');
readln(A[i]);
s1:=0;
for i:=1 to 10 do s1:=s1+a[i];
for i:=1 to n do s2:=(a[1]+a[n])*n/2;
writeln(s2);
if s1=s2 then
writeln('arifmeticheskay progressia')
else
writeln('ne arifmeticheskay progresia');
end.
Пожайлуста помогите.Прислать на kutcherkain@yandex.ru

Состояние: Консультация закрыта

Ответ # 127851 от Verena

Здравствуйте, Das_Kain!
Эта ошибка говорит о несочетаемости типов real и byte, причём по вашей задаче, даже если задать массив byte, то переменная s2 должна быть real, т.к. в неё присваиваеися значение, полученное делением. И ещё в первом цикле пропущен end, но это уже другая ошибка.


Консультировал: Verena
Дата отправки: 22.11.2006, 14:32

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Ответ # 127886 от Юрий Викторович

Здравствуйте, Das_Kain!
for i:=1 to 10 do s1:=s1+a[i]; S1 - byte ему нельзя присваивать значение типа REAl
перед s1:=0 нужен end для предыдущего цикла.
Зачем введена константа n?


Консультировал: Юрий Викторович
Дата отправки: 22.11.2006, 18:04

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Мини-форум консультации № 63702

Вадим Исаев ака sir Henry
Старший модератор

ID: 425

# 1

= общий = | 22.11.2006, 13:09 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

Когда компилятор выдает ошибку 'type mismatch', он Вам указывает точное место в коде, где произошла ошибка и Вы сами можете ее поправить. Что Вам непонятно, поясните пожалуйста.

=====
Я только в одном глубоко убеждён - не надо иметь убеждений! :)


Посетитель

ID: 17049

# 2

= общий = | 22.11.2006, 13:21 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

Вы суммируете элементы массива A[] и сохраняете в s1. Но массив у вас переменных с плавающей точкой (real), а пеерменные s1 и s2 — типа byte. Но вообще, действительно, учитесь читать, что вам говорит компилятор.


Посетитель

ID: 26904

# 3

= общий = | 22.11.2006, 16:57 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

Пробовал различные типы не помогает.

Вадим Исаев ака sir Henry
Старший модератор

ID: 425

# 4

= общий = | 22.11.2006, 17:09 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

To Das_Kain: Не надо пробовать различные типы, надо пробовать одинаковые типы, тогда обязательно поможет.

=====
Я только в одном глубоко убеждён - не надо иметь убеждений! :)

 

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.25759 сек.

© 2001-2017, Портал RFPRO.RU, Россия
Авторское право: ООО "Мастер-Эксперт Про"
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.41 от 25.02.2017
Бесплатные консультации онлайн