0 / 0 / 0
Регистрация: 18.11.2012
Сообщений: 8

требуется разобратся с кодом

08.05.2013, 00:15. Показов 731. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите поправить приложение которое рассчитывает скорость бега ,нужно чтобы скорость рассчитывалась в разных
единицах измерения и поместить все на форму ,т.е сейчас рассчитывается в км\ч нужно добавить еще м\с км\сек\,м\ч,м\мин хотябы вот это.
Delphi
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
unit vrun1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
 
type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
    procedure Edit2KeyPress(Sender: TObject; var Key: Char);
  
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
// щелчок на кнопке Вычислить
procedure TForm1.Button1Click(Sender: TObject);
var
    dist : integer; // дистанция, метров
    t:     real;    // время, как дробное число
 
    min : integer;  // время, минуты
    sek : integer;   // время, секунды
 
    v: real;        // скорость
begin
    // получить исходные данные из полей ввода
    dist := StrToInt(Edit1.Text);
    t := StrToFloat(Edit2.Text);
 
    // предварительные преобразования
    min := Trunc(t);  // кол-во минут - это целая часть числа t
    sek := Trunc(t*100) mod 100; // кол-во секунд - это дробная часть числа t
 
    // вычисление
    v := (dist/1000) / ((min*60 + sek)/3600);
 
    // вывод результата
    label4.Caption := 'Дистанция: '+ Edit1.Text + ' м' + #13 +
                      'Время: ' + IntToStr(min) + ' мин ' +
                                 IntToStr(sek) + ' сек ' + #13 +
                      'Скорость: ' + FloatToStrF(v,ffFixed,4,2) + ' км/час';
 
end;
 
// щелчок на кнопке Завершить
procedure TForm1.Button2Click(Sender: TObject);
begin
        Form1.Close;
end;
 
// нажатие клавиши в поле Дистанция
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
    // Key - символ, соответствующий нажатой клавише.
    // Если символ недопустимый, то процедура заменяет его
    // на символ с кодом 0. В результате этого символ в поле
    // редактирования не появляется и у пользователя создается
    // впечатление, что программа не реагирует на нажатие некоторых
    // клавиш.
    case Key of
      '0'..'9':                  ; // цифра
      #8      :                  ; // <Backspace>
      #13     : Edit2.SetFocus   ; // <Enter>
 
      // остальные символы - запрещены
      else Key :=Chr(0);  // символ не отображать
    end;
end;
 
 
 
procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
    case Key of
      '0'..'9':   ; // цифра
 
      ',','.' :
          // точка или запятая
          begin
             if Key = '.' then Key := ','; // подменим точку запятой
             // проверим, есть ли в поле Edit2 запятая
             if Pos(',',Edit2.Text) <> 0 // запятая уже есть
                 then Key:=Char(0);      // вторую запятую не отображать
          end;
 
      #8      :                  ; // <Backspace>
 
      // остальные символы - запрещены
      else Key :=Chr(0);  // символ не отображать
    end;
end;
 
end.
вот код
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.05.2013, 00:15
Ответы с готовыми решениями:

Не могу разобратся с условием
на форме 1 кнопка 1 строка (едит) и 1 мемо, 1 за другой вводится 7 строк, после окончания ввода строка состояния становится невидимой....

Не могу разобратся с кодами!!!
Привет Всем!!! Я недавно начал заниматся программированием начал с Borland Delphi 2005 нашел к нему видео обучалку я понял как создать...

Не могу разобратся с задачами
1. Определить функцию, которая возвращает сумму цифр натурального числа. Получить ряд чисел от н1 до н2; каждое последующее число равно...

12
Эксперт Pascal/Delphi
 Аватар для droider
4927 / 2794 / 856
Регистрация: 04.10.2012
Сообщений: 10,189
08.05.2013, 00:22
Цитата Сообщение от шатал Посмотреть сообщение
vrun

Не по теме:

я конечно, понимаю, что это скорость бега, но сначала удивило...



Добавлено через 2 минуты
знаменитый "учебник Delphi для начинающих" . Вы в курсе как математически осуществляется перевод?
0
0 / 0 / 0
Регистрация: 18.11.2012
Сообщений: 8
08.05.2013, 00:24  [ТС]
вот и вся проблема что не знаю где и как что то здесь изменить что бы получилось то что мне нужно,как только что то менял сразу ошибки появлялись
0
angstrom
08.05.2013, 00:28
1 Км = 1000 м, в чём проблема? Делим, умножаем - арифметика начальных классов школы.
0 / 0 / 0
Регистрация: 18.11.2012
Сообщений: 8
08.05.2013, 01:11  [ТС]
а куда и как это подставить в коде
0
0 / 0 / 1
Регистрация: 28.12.2012
Сообщений: 6
08.05.2013, 23:02
Цитата Сообщение от шатал Посмотреть сообщение
а куда и как это подставить в коде
что мешает реализовать формулу в переменных?
0
0 / 0 / 0
Регистрация: 18.11.2012
Сообщений: 8
08.05.2013, 23:12  [ТС]
мешае то чо уже есть готовая программа на форме два компонена дистанция и скорость,вот во второй выводится скорось в км\ч,мне же нужно чтобы было хотябы еще 3 ед измерения,что для этого сделать в коде не понимаю
0
 Аватар для ProRockX
263 / 109 / 26
Регистрация: 16.03.2013
Сообщений: 272
08.05.2013, 23:26
Добавить на форму ещё несколько label и в них выводить результаты в м\с, км\с и тд
0
0 / 0 / 0
Регистрация: 18.11.2012
Сообщений: 8
08.05.2013, 23:27  [ТС]
а как это в коде сделать тож самое?
0
 Аватар для ProRockX
263 / 109 / 26
Регистрация: 16.03.2013
Сообщений: 272
08.05.2013, 23:36
Примерно так:
Delphi
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
35
36
procedure TForm1.Button1Click(Sender: TObject);
var
    dist : integer; // дистанция, метров
    t:     real;    // время, как дробное число
 
    min : integer;  // время, минуты
    sek : integer;   // время, секунды
 
    v, v2, v3, v4, v5: real;        // скорость
 
begin
    // получить исходные данные из полей ввода
    dist := StrToInt(Edit1.Text);
    t := StrToFloat(Edit2.Text);
 
    // предварительные преобразования
    min := Trunc(t);  // кол-во минут - это целая часть числа t
    sek := Trunc(t*100) mod 100; // кол-во секунд - это дробная часть числа t
 
    // вычисление
    v := (dist/1000) / ((min*60 + sek)/3600); //км в ч
    v2:= (dist/1000) / (min*60 + sek); //км в сек
    v3:= (dist) / ((min*60 + sek)/60); //м в мин
    v4:= (dist) / (min*60 + sek); //м в сек
    v5:= (dist) / ((min*60 + sek)/3600); //м в час
 
    // вывод результата
    label4.Caption := 'Дистанция: '+ Edit1.Text + ' м' + #13 +
                      'Время: ' + IntToStr(min) + ' мин ' +
                                 IntToStr(sek) + ' сек ' + #13 +
                      'Скорость: ' + FloatToStrF(v,ffFixed,4,2) + ' км/час'+ #13 +
                              FloatToStrF(v2,ffFixed,4,2) + ' км/сек'+ #13 +
                              FloatToStrF(v3,ffFixed,4,2) + ' м/мин'+ #13 +
                              FloatToStrF(v4,ffFixed,4,2) + ' м/сек'+ #13 +
                              FloatToStrF(v5,ffFixed,4,2) + ' м/час';
end;
0
0 / 0 / 0
Регистрация: 18.11.2012
Сообщений: 8
08.05.2013, 23:40  [ТС]
это т.е мне поможе один лабел и вот эот код внутри него так я понимаю,или к каждому лейблу по соответствующей ед измерения с этим кодом
0
 Аватар для ProRockX
263 / 109 / 26
Регистрация: 16.03.2013
Сообщений: 272
08.05.2013, 23:46
Да можно всё и в 1 лейбл кидать, можешь просто заменить процедуру из твоего кода на мою и всё.
1
0 / 0 / 0
Регистрация: 18.11.2012
Сообщений: 8
08.05.2013, 23:47  [ТС]
огромное спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.05.2013, 23:47
Помогаю со студенческими работами здесь

Немогу разобратся ошибки в програме
Обислить: y=Cosx*Cos2x*...*Cos10x. unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics,...

Разобратся с кодом
Всем привет, делаю поиск фильмов, инфу беру с ОМДБ, прблема в том что постеры с названием и годом фильма он берет нормально, а инфу только...

Помогите разобратся с кодом.
Что нужно сюда дописать что бы этот код грамотно выдергивал то что мне нужно? &lt;? $content = file_get_contents(&quot;url...

Калькулятор - помогите разобратся с кодом
здраствуйте. помогите разобратся с кодом. { var curReadOut = okno.value; if (NewNum) { curReadOut = &quot;0.&quot;; ...

Пожалуйста помогте разобратся с кодом. Если не сложно поподробнее распишите
Процедура ОбработкаПроведения(Отказ, РежимПроведения) Если РежимПроведения = РежимПроведенияДокумента.НеОперативный Тогда ...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

Новые блоги и статьи
Трассировка корутин Kotlin с OpenTelemetry
mobDevWorks 14.07.2025
Асинхронное программирование меняет правила игры, особенно когда речь заходит о трассировке операций. В Kotlin с его корутинами эта проблема приобретает особый оттенок, который я хотел бы детально. . .
Облачные приложения на Rust: руководство по архитектуре микросервисов
golander 13.07.2025
Когда я впервые взялся за проектирование облачной платформы для одного из наших клиентов, выбор стоял между привычными Go и Java. Но после нескольких месяцев разработки микросервисной системы,. . .
Как Node.js выполняет асинхронные операции
Reangularity 13.07.2025
Каждый раз, когда я рассказываю про Node. js, возникает один и тот же вопрос: "Как эта штука может быть быстрой, если JavaScript — однопоточный язык?" И это действительно кажется парадоксом. Ведь в. . .
Как писать чистый, тестируемый и качественный код на Python
py-thonny 12.07.2025
Помню свой первый проект на Python. Работал тогда быстро, грязно, лишь бы работало. Код был похож на запутанный клубок - переменные по одной букве, функции на 200 строк, комментарии отсутствовали как. . .
Blazor и контроллер сервопривода IoT Meadow Maple
Wired 11.07.2025
Я решил разобраться, как можно соединить современные веб-технологии с миром "железа". Интересная комбинация получилась из Blazor в качестве веб-интерфейса и микроконтроллера Meadow с его веб-сервером. . .
Генерация OpenQASM из кода Q#
EggHead 10.07.2025
Летом 2024-го я начал эксперименты с библиотекой Q# Bridge, и знаете что? Она оказалась просто находкой для тех, кто работает на стыке разных квантовых экосистем. Основная фишка этой библиотеки -. . .
Изучаем новый шаблон ИИ-чата .NET AI Chat Web App
stackOverflow 10.07.2025
В . NET появилось интересное обновление - новый шаблон ИИ-чата под названием . NET AI Chat Web App. Когда я впервые наткнулся на анонс этого шаблона, то сразу понял, что Microsoft наконец-то. . .
Результаты исследования от команды ARP (июль 2025 г.)
Programma_Boinc 10.07.2025
Результаты исследования от команды ARP (июль 2025 г. ) Африканский проект по дождям (ARP) World Community Grid снова запущен! Мы рады поделиться обновленной информацией о нашем прогрессе с осени. . .
Angular vs Svelte - что лучше?
Reangularity 09.07.2025
Сегодня рынок разделился на несколько четких категорий: тяжеловесы корпоративного уровня (Angular), гибкие универсалы (React), прогрессивные решения (Vue) и новая волна компилируемых фреймворков. . .
Code First и Database First в Entity Framework
UnmanagedCoder 09.07.2025
Entity Framework дает нам свободу выбора, предлагая как Code First, так и Database First подходы. Но эта свобода порождает вечный вопрос — какой подход выбрать? Entity Framework — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru