C#: перевод из м/с в км/ч
Задача
Написать программу на языке C#, которая переводит скорость из м/с (метры в секунду) в км/ч (километры в час). Особенности приложения:Исходники программы можно скачать здесь.
- возможность ввода в поле только целого положительного числа;
- расчет осуществляется либо по нажатию на кнопку, либо по нажатию клавиши "Enter".
Код программы:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace Km { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void pereschet() { try { double v = Convert.ToDouble(textBox1.Text); v = 3600 * v / 1000; label1.Text = v.ToString(); } catch (FormatException fe) { MessageBox.Show("Только число введи, да."); }; } private void button1_Click(object sender, EventArgs e) { pereschet(); } private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { if ((e.KeyChar <= 47 || e.KeyChar >= 59) && e.KeyChar != 8) e.Handled = true; } private void textBox1_KeyDown(object sender, KeyEventArgs e) { pereschet(); } private void linkLabel1_Click(object sender, EventArgs e) { System.Diagnostics.Process.Start("https://upread.ru?ref=km"); } } }Пара комментариев по коду выше. Сам пересчет скорости осуществляется в методе pereschet. Он извлекает значение из текстбокса (textBox1.Text) и преобразует его в формат double. Необходима конструкция try - catch, так как может выпрыгнуть ошибка, что введенное число вовсе не является числом. Прсото отловим это исключение и покажем окно с сообщением, что требуется ввести только число. На самом деле это исключение сработает только одном случае - когда в текстбоксе пусто, так как метод textBox1_KeyPress проверяет вводимые символы (точнее, нажимаемые клавиши) и разрешает появляться в этом поле только цифрам 0-9.
Нажатие клавиши "Enter" обрабатывает метод textBox1_KeyDown, он также передает затем управление методу pereschet. В общем, и все, есть только еще метод, обрабатывающий нажатие на линклайбел (ссылку-метку) - тогда запускается браузер по умолчанию и происходит переход на наш сайт. Любые вопросы/предложения/задачи на си шарп - велком на почту up777up@yandex.ru.
Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.
Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.