На нашем сайте мы используем cookie для сбора информации технического характера и обрабатываем IP-адрес вашего местоположения. Продолжая использовать этот сайт, вы даете согласие на использование файлов cookies. Здесь вы можете узнать, как мы пользуемся файлами cookies.
Я согласен
логотип upread.ru

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 - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.



тегистатьи IT, си шарп, задачи





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




Урок 2. Основные ключевые слова Java: практика и тестирование
Месть и смысл жизни


© upread.ru 2013-2020
При перепечатке активная ссылка на сайт обязательна.
Задать вопрос
письмо
Здравствуйте! Вы можете задать мне любой вопрос. Если не получается отправить сообщение через эту форму, то пишите на почу up777up@yandex.ru
Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.