29.06.2017, 01:36 [+3 UTC]
в нашей команде: 2 048 чел. | участники онлайн: 0 (рекорд: 21)

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

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

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

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

:: правила

:: новости

:: участники

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

:: форум

:: блоги

:: поиск

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

:: наш журнал

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

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

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

:: поддержка

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

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

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

Форум:
28.06.2017, 23:09

Последний вопрос:
28.06.2017, 12:36

Последний ответ:
28.06.2017, 08:33

Последняя рассылка:
28.06.2017, 20:45

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

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

Наша кнопка:

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

Отзывы о нас:
08.04.2017, 11:21 »
svrvsvrv
Большое спасибо за подробный ответ [вопрос № 190844, ответ № 274887]
06.04.2010, 10:30 »
Anjali
Спасибо большое, буду изучать! (Антивирус и файервол стоят бесплатные). [вопрос № 177694, ответ № 260624]

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

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

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

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

Зенченко Константин Николаевич
Статус: Модератор
Рейтинг: 180
mklokov
Статус: 6-й класс
Рейтинг: 130
Ксюша
Статус: 1-й класс
Рейтинг: 1

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

Консультация онлайн # 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.13754 сек.

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