Помощь начинающему

Форум для изучающих FPC и их учителей.

Модератор: Модераторы

Помощь начинающему

Сообщение saymonRK » 23.05.2012 16:57:55

Здравствуйте нужна помошь
что делает программа ,а лучше напишите условия задачи.
заранее благодарен
Begin
c:=2;
s:=0;
for n:=1 to 50 do
begin
с:=6-с;
у:=n/(100+n);
s:=s+с*у;
end;
s:=s+0.5;
writeln(’I = ’, s/300.0);
readln;
End.
saymonRK
незнакомец
 
Сообщения: 3
Зарегистрирован: 02.05.2012 16:02:07

Re: Помощь начинающему

Сообщение Kitayets » 24.05.2012 22:56:25

программа 50 раз вычисляет выражения в цикле, после чего добавляет к S ещё ноль-пять и выводит на экран одну трёхсотую этого значения.
Kitayets
постоялец
 
Сообщения: 171
Зарегистрирован: 05.05.2010 21:15:24

Re: Помощь начинающему

Сообщение Leon » 17.06.2012 14:54:12

Прошу знатоков подсказать как сделать.Есть 20 фигур,которы нужно перекрасить другим цветом.
Рутинным способом это довольно заморочливая процедура,прописывать каждому шейпу свой цвет.
В других языках я встречал возможность создания так называемых "подставных имен",т.е. имя объекта формируется динамически.Что я имею ввиду?
Ну вот посмотрим.Требуется всем 20 шейпам дать красный цвет.Пишем последовательно
Shape1.Canvas,Color:=clRed;
...
Shape20.Canvas,Color:=clRed;

А было бы неплохо если бы работала конструкция
for N:=1 to 20 do
ShapeN.Canvas.Color:=clRed;

ShapeN - то самое подставное имя,заменяющее Shape1,Shape2...

В Лазарусе что-то такое возможно или это абсурд?
Как выйти из положения? Или писать классически все команды подряд?
Спасибо.
Leon
новенький
 
Сообщения: 65
Зарегистрирован: 30.03.2011 09:27:02

Re: Помощь начинающему

Сообщение Mr.Smart » 17.06.2012 14:57:16

Код: Выделить всё
var
  Shapes: array [0..X] of TShape;
...
  Shapes[0]:=Shape1;
...
  Shape[X]:=ShapeX;
...

  for N:=1 to X do
   Shapes[N].Canvas.Color:=clRed;
Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: Помощь начинающему

Сообщение Little_Roo » 18.06.2012 00:42:02

Leon писал(а):А было бы неплохо если бы работала конструкция
for N:=1 to 20 do
ShapeN.Canvas.Color:=clRed;


У меня так в проекте (выдернул не изменяя, ну принцип, думаю, понятен )
Код: Выделить всё
var
  i: integer;
  Lab: TComponent; 
...........
  for i := 1 to 375 do
  begin
    Lab := FindComponent('DBO' + IntToStr(i)); // DBO1..DBO375 - это DBEdit`ы
    if (Lab as TDBedit).Text = '2' then
      (Lab as TDBedit).Color := $00d7d7d7
    else
      (Lab as TDBedit).Color := clWindow;
  end;
Аватара пользователя
Little_Roo
энтузиаст
 
Сообщения: 639
Зарегистрирован: 27.02.2009 19:56:36
Откуда: Санкт-Петербург

Re: Помощь начинающему

Сообщение Leon » 23.06.2012 12:36:42

Добрый день.
Прошу знатоков откликнуться и прояснить ситуацию.
1.Мне в проге понадобилось сунуть календарь.Сунул.Ну а там названия месяцев русские.Можно ли как-то поменять их на национальные или это уже фатально?
2.То ли с моим Лазарусом что-то,то ли баги.В кнопках есть пунктик Сolor и там стоит Default.Меняй его на кой хош,всеравно кнопка серая.Зачем нужен этот самый Колор?
Кроме того надписи на кнопках постоянно черные и изменение цвета фонта ничего не дает.Может я что-то не так делаю?
Спасибо.
Leon
новенький
 
Сообщения: 65
Зарегистрирован: 30.03.2011 09:27:02

Re: Помощь начинающему

Сообщение nikolay61 » 16.08.2012 23:07:57

Доброго всем кто не спит! В проге Фри что-то нажал и курсор вместо черточки стал пульсирующий желтый прямоугольник, который при введении символов стирает ранее вводимые по ходу своего движения. Как вернуть его на черточку.
nikolay61
новенький
 
Сообщения: 27
Зарегистрирован: 15.08.2012 16:58:46

Re: Помощь начинающему

Сообщение Oleg_D » 16.08.2012 23:16:55

nikolay61 писал(а):Как вернуть его на черточку.

Нажать клавишу Insert - она переключает ввод между режимами вставки и замены.
Oleg_D
постоялец
 
Сообщения: 391
Зарегистрирован: 09.05.2011 11:28:36

Re: Помощь начинающему

Сообщение OberonAR » 17.08.2012 11:24:46

:D
Аватара пользователя
OberonAR
новенький
 
Сообщения: 73
Зарегистрирован: 08.02.2012 11:46:04
Откуда: Краснодарский край

Re: Помощь начинающему

Сообщение nikolay61 » 12.09.2012 23:10:34

ОК! Четко работает. Благодарю и будьте здоровы
nikolay61
новенький
 
Сообщения: 27
Зарегистрирован: 15.08.2012 16:58:46

Re: Помощь начинающему

Сообщение nikolay61 » 20.09.2012 09:48:00

Доброго! О чем говорит это сообщение об ошибке построчно http://img-fotki.yandex.ru/get/6410/104 ... c43_XL.jpg
На что нужно обращать особое внимание, чтобы найти место ошибки непосредственно в програме. И еще: как непосредсвенно у форум вставить рисунок, чтобы не через ссылку?
Спасибо!
nikolay61
новенький
 
Сообщения: 27
Зарегистрирован: 15.08.2012 16:58:46

Re: Помощь начинающему

Сообщение Vadim » 20.09.2012 10:29:06

nikolay61 писал(а):На что нужно обращать особое внимание, чтобы найти место ошибки непосредственно в програме.

У Вас там в нижнем (зелёном) окошке написано:
dua.pas(11,4)
это значит, что ошибка произошла в 11 строке, четвёртый символ слева. Если щёлкнуть мышкой по этой строчке в зелёном окошке, то в основном окне курсор перейдёт как раз на место ошибки и строка ошибки выделится красным цветом.
Чтобы исправить ошибку, нужно смотреть на описание ошибки, которое идёт после скобок (11,4):
Fatal: Syntax error, ";" expected but "ELSE" found.
Что переводится как:
Fatal - ошибка фатальная, дальнейшая компиляция невозможна,
Syntax error - синтаксическая ошибка, т.е. учительница по Вашему родному языку обязательно выделит это место красным цветом и зачеркнёт. ;)
Далее, описано в чём именно заключается синтаксическая ошибка:
После ";" непонятно почему найдено слово "ELSE".

Исправляйте. ;)
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Помощь начинающему

Сообщение nikolay61 » 20.09.2012 11:13:09

А у меня еще проблема. После нажатия ВЫПОЛНИТЬ, открывается окно результатов и длительное время (сек 10-15) приходится ждать пока появится введенное число. Ощущение торможения. А когда цифры появились, следующий ввод и вывод результата реагирует мгновенно. Что за проблема?

Добавлено спустя 2 минуты 58 секунд:
Вы пишете Если щёлкнуть мышкой по этой строчке в зелёном окошке, то в основном окне курсор перейдёт как раз на место ошибки и строка ошибки выделится красным цветом. А у меня это не работает.

Добавлено спустя 6 минут 57 секунд:
Как сохранить файл в .exe
nikolay61
новенький
 
Сообщения: 27
Зарегистрирован: 15.08.2012 16:58:46

Re: Помощь начинающему

Сообщение Paster Fob » 20.09.2012 13:17:51

nikolay61 писал(а):как непосредсвенно у форум вставить рисунок, чтобы не через ссылку?


Вот так:
1.Нажми сюда.
2.Вставь ссылку между тегов.
Изображение
Последний раз редактировалось Paster Fob 20.09.2012 14:37:45, всего редактировалось 1 раз.
Аватара пользователя
Paster Fob
постоялец
 
Сообщения: 188
Зарегистрирован: 22.02.2011 21:53:36
Откуда: Новосибирск.

Re: Помощь начинающему

Сообщение Vadim » 20.09.2012 13:28:03

Paster Fob
Только это не Vadim спрашивал. :D

Добавлено спустя 4 минуты 43 секунды:
nikolay61 писал(а):Вы пишете Если щёлкнуть мышкой по этой строчке в зелёном окошке, то в основном окне курсор перейдёт как раз на место ошибки и строка ошибки выделится красным цветом. А у меня это не работает.

Тогда пользуйтесь клавишами со стрелками. На рисунке у Вас окно с ошибками активно, значит используя клавиши со стрелкой вверх(или вниз) переходите на то сообщение об ошибке, которое Вас категорически заинтересовало и нажимаете клавишу ENTER. После этого в основном окне с кодом курсор начинает мигать именно в этой позиции, где ошибка.

Добавлено спустя 3 минуты 55 секунд:
nikolay61 писал(а):Как сохранить файл в .exe

Это называется не "сохранить", а "откомпилировать код программы".
С помощью нажатия клавиши F9.
Клавишы Ctrl+F9 запускает программу на выполнение.
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

След.

Вернуться в Обучение Free Pascal

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12

Рейтинг@Mail.ru