Привет, Гость! Регистрация RSS
Четверг, 02.05.2024
Главная » Файлы » Основные файлы сайта

Программа для вычисления процента от числа
[ Скачать с сервера (352.7 Kb) ] 23.12.2012, 19:02
Перед нами задача: 
Необходимо написать программу, которая будет вычислять процент от числа. Само число и процент должны вводиться самим пользователем.

Я не спорю, для вас задача может быть очень простая. Но я решил, что многим будет интересно то, какими компонентами лучше всего реализовать.
И так для решения я использовал:
» spinedit – удобно для ввода целого числа, его выбора и изменения кнопками-стрелками;
» edit – этот компонент будет выводить результат, который при желании можно будет скопировать;
» scrollbar – для установки значения процента;
» gauge – очень удобно для наглядного представления процентов;
» bitbtn – просто для обновления.

Gauge вы можете заменить на label или на любой другой компонент для представления текстовой информации, также как bitbtn – на button и т.п.. Но представленные здесь компоненты выбраны не случайно, ввиду своих специфик и удобств в использовании.

Теперь перейдем к практической части. Как обычно первым делом создаем новое приложение и размещаем наши компоненты на form1 по своему усмотрению. Лично я расположил их таким образом:

Дальше совсем просто. Нам нужно связать gauge и scrollbar. Для этого нажимаем дважды на scrollbar и прописываем
gauge1.Progress:=ScrollBar1.Position;
Следующим этапом будет написание формулы расчета процента на языке delphi. Это будет выглядеть примерно так:
edit1.Text := IntToStr(SpinEdit1.Value * scrollbar1.position div 100)+ ','
+ IntToStr(abs(SpinEdit1.Value * scrollbar1.position mod 100));
Немного поясню. После "равно" и до символа ',' программа будет производить целочисленное деление (div) произведения значение edit и позицию scrollbar'а на 100. Но это будет без остатка. А чтобы получить остаток мы прописали вторую часть того кода после символа ','.  Благодаря mod мы как раз и получаем наш остаток. Однако, наш остаток местами может быть и отрицательным числом, поэтому мы также используем функцию abs, чтобы удалить отрицательный знак.
И вот в конечном счете Ваш код должен выглядеть примерно таким:
procedure TForm1.ScrollBar1Change(Sender: TObject);
begin
gauge1.Progress:=ScrollBar1.Position;
edit1.Text := IntToStr(SpinEdit1.Value * scrollbar1.position div 100)+ ','
+ IntToStr(abs(SpinEdit1.Value * scrollbar1.position mod 100));
end;
Теперь пропишем код для нашей кнопки:
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
edit1.Text := IntToStr(SpinEdit1.Value * scrollbar1.position div 100)+ ','
+ IntToStr(abs(SpinEdit1.Value * scrollbar1.position mod 100));
end;   
Компилируем и смотрим результат.

Подпишись, чтобы получать свежие исходники!
Нравится
Категория: Основные файлы сайта | Добавил: Dark_Green | Теги: вычисление процента от числа, Edit, bitbtn, Gauge, Scrollbar, spinedit
Просмотров: 10574 | Загрузок: 1873 | Рейтинг: 0.0/0

Другие примеры
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]