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

Попытка присвоить переменной типа integer выражение типа real

14.06.2013, 20:43. Показов 8703. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте форумчане.
Написала программу для замены элементов массива после максимального элемента на 0.
Нужно исправить код, замена должна быть на 0,5.
Не получается, пишет-Попытка присвоить переменной типа integer выражение типа real.
Делаю через константу 0,5 тоже не работает, ошибка такая же.
вот собственно и код:
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
27
28
29
30
31
32
uses crt;
  const
     X: real =0.5;
        var i,size,min,num:integer;
        a:array[1..10000] of integer;
        begin;
        clrscr;
        writeln('Введите размер массива');
        readln(size);
        writeln('Введите элементы массива');
        FOR i := 1 TO size do
        begin
        readln(a[i]);
        end;
        min := a[1];
        FOR i := 2 TO size do
        begin
        IF a[i] > min THEN
        begin
        num := i + 1;min:=a[i];
        end;
        end;
        FOR i := num TO size do
        begin
        a[i]:=x;
        end;
        writeln('Результат':');
        FOR i := 1 TO size do
        begin
        writeln(a[i]);
        end;
          end.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.06.2013, 20:43
Ответы с готовыми решениями:

Попытка присвоить переменной типа integer выражение типа real
Здравствуйте! Моя задача: Найти сумму всех n-значных чисел, кратных k (1 ≤ п ≤ 4). Я составила программу, но выдает ошибку "Попытка...

Метод Симпсона - попытка присвоить значение integer переменной типа real
Как исправить ошибку? В строке N2:= n/2; пишет попытка присвоить значение integer переменной типа real. Не могу понять что не так? ...

Преобразование типа из real в integer
можно ли в паскале перевести вещественную в целую переменную? (из real в integer)

6
12 / 12 / 5
Регистрация: 23.12.2012
Сообщений: 42
14.06.2013, 20:57
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Вроде так...
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
27
28
29
30
31
32
33
34
uses crt;
const
X=0.5;
var i,size,num:integer;
min:real;
a:array[1..10000] of real;
 
begin;
writeln('Размерность');
readln(size);
writeln('Элементы');
FOR i := 1 TO size do
 begin
  readln(a[i]);
 end;
min := a[1];
FOR i := 2 TO size do
 begin
  IF a[i] > min THEN
   begin
    num := i + 1;
    min:=a[i];
  end;
 end;
FOR i := num TO size do
 begin
  a[i]:=x;
 end;
writeln('Результат:');
FOR i := 1 TO size do
  begin
   writeln(a[i]);
  end;
end.

Не по теме:

Сильно не пинайте если не так...

2
 Аватар для ermolay
3451 / 2389 / 2135
Регистрация: 04.12.2011
Сообщений: 3,966
14.06.2013, 20:58
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Sandra105, массив должен быть массивом чисел типа real, и min тоже real (кстати, почему вы его назвали min, он же max? =))
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
27
28
29
30
31
32
uses
  crt;
 
var
  i, size, num: integer;
  a: array[1..10000] of real;
  min: real;
begin;
  clrscr;
  writeln('Ââåäèòå ðàçìåð ìàññèâà');
  readln(size);
  writeln('Ââåäèòå ýëåìåíòû ìàññèâà');
  for i := 1 TO size do
  begin
    readln(a[i]);
  end;
  min := a[1];
  for i := 2 TO size do
  begin
    if a[i] > min THEN
    begin
      num := i + 1;min := a[i];
    end;
  end;
  for i := num TO size do
  begin
    a[i] := 0.5;
  end;
  writeln('Ðåçóëüòàò: ');
  for i := 1 TO size do
    writeln(a[i]);
end.
1
 Аватар для Sandra105
0 / 0 / 0
Регистрация: 13.01.2013
Сообщений: 13
14.06.2013, 21:04  [ТС]
Спасибо большое! Все работает.
ermolay, только что заметила про min. Самой смешно я до этого писала программу на замену после минимального, и скопировала ее, даже не исправила)
0
 Аватар для ermolay
3451 / 2389 / 2135
Регистрация: 04.12.2011
Сообщений: 3,966
14.06.2013, 21:09
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Не по теме:

NimPO, пинать не за что, все верно)


немного оптимизировал, убрал ненужное и т. д.:
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
uses
  crt;
var
  i, size, num, imin: integer;
  a: array[1..10000] of real;
begin;
  clrscr;
  writeln('Ââåäèòå ðàçìåð ìàññèâà');
  readln(size);
  writeln('Ââåäèòå ýëåìåíòû ìàññèâà');
  for i := 1 TO size do
    readln(a[i]);
  imin := 1;
  for i := 2 TO size do
  begin
    if a[i] > a[imin] THEN
      imin:=i;
  end;
  writeln('Ðåçóëüòàò: ');
  for i := 1 TO size do
  begin
    if i>imin then a[i] := 0.5;
    writeln(a[i]);
  end;
end.
Добавлено через 45 секунд
здесь imin - индекс, поэтому он интегер..
1
 Аватар для Sandra105
0 / 0 / 0
Регистрация: 13.01.2013
Сообщений: 13
14.06.2013, 21:27  [ТС]
ermolay, браво! ваш вариация более читабельна и понятна. Буду использовать её.
Я тоже хочу писать так ясно и быстро..
0
14.06.2013, 21:35

Не по теме:

Sandra105, все в ваших руках! Успехов!

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.06.2013, 21:35
Помогаю со студенческими работами здесь

Из двух файлов типа integer создать третий файл типа integer
я маюсь с ффайлами уже замучился задание Из двух файлов типа integer создать третий файл типа integer,такой что каждый его минимальный...

Используя оператор if, вычислить заданное выражение для данных типа Real
Помогите пожалуйста,если можно с устной пометкой) y=x^a\cdot \ln x+\frac{x^a\cdot e^{ax}}{\sin x\cdot \cos x}\,,\qquad a=2.34\cdot...

Вычислить заданное выражение для типа integer
Используя оператор if, вычислить заданное выражение для типа integer B=2x-y+5 если

Использование типа Integer в переменной record
Господа, в общем проблемка высветилась.... У меня есть переменная типа record, но т.к. она стоит в цикле и должна постоянно менятся...

Используя оператор if, вычислить заданное выражение для данных типа Integer:
Используя оператор if, вычислить заданное выражение для данных типа Integer:


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
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
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru