Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Пример обработки исключений при чтении числа из консоли




 

Ниже приведен пример ввода целого числа tс консоли и вывода его снова в консоль – с обработкой всех возникающих исключений.

 

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

 

publicclass Test3 {

 

publicstaticvoid main(String[] args) {

 

     intt;

     try {

     // !!! Здесь может быть выброшено исключение

     // ввода-вывода

          BufferedReader br = new BufferedReader(new

          InputStreamReader(System.in));

          //Читаем из консоли строку

     // !!! Здесь может быть выброшено исключение

     // ввода-вывода

          Strings = br.readLine();

          //конвертируемстрокувчислоt

     // !!! Здесь может быть выброшено исключение

     // неправильного формата числа

          t = Integer.parseInt(s);

 

     //Ловим исключения ввода-вывода

     } catch (IOExceptione) {

          //Выводим сообщение об исключении в консоль

     System.out.println("IOException: "

                    + e.getMessage());

          // завершаемработупрограммы

     return;

 

     //Ловим исключения неправильного формата числа

     } catch (NumberFormatExceptione) {

          //Выводим сообщение об исключении в консоль

          System.out.println("NumberFormatException: "

                    +e.getMessage());

          // завершаем работу программы

          return;

     }

 

     // Если исключений не было – дойдем до этого кода

     // и выведем введенное значение t

     System.out.println("t=" + t);

}

 

}

 

Пример решения задачи A

 

Ниже приведено решение для 0 варианта задачи A.

 

Вариант A.0

Для введенного числа t (температура на улице в конце января) вывести прилагательное, характеризующее температуру качественно.

Если t>–5, то вывести «Тепло».

Если –5>= t>–20, то вывести «Нормально».

Если –20>= t, то вывести «Холодно».

 

Текст программы:

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

 

 

publicclass A_0 {

publicstaticvoid main(String[] args) {

     int t;

         

     System.out.print("Введите t: ");

     try {

          BufferedReader br = new BufferedReader(new

               InputStreamReader(System.in));

          //Читаем из консоли

          String s = br.readLine();

          //конвертируемстрокувчисло

          t = Integer.parseInt(s);

     //Ловим исключения ввода-вывода

     } catch (IOExceptione) {

          //Выводим сообщение об исключении в консоль

          System.out.println("IOException: "

                    +e.getMessage());

          // завершаемработупрограммы

          return;

     //Ловим исключения неправильного формата числа

     } catch (NumberFormatExceptione) {

          //Выводим сообщение об исключении в консоль

          System.out.println("NumberFormatException: "

               +e.getMessage());

          // завершаем работу программы

          return;

     }

         

     // собственно вывод «Тепло», «Нормально» и «Холодно»

     if (t >–5) {

          System.out.println("Тепло!");

     } elseif (t >–20) {

          System.out.println("Нормально!");

     } else {

          System.out.println("Холодно!");

     }

}

}

 

Блок-схема программы:

 


Рис. 3.7. Блок-схема программыA.0

 










Последнее изменение этой страницы: 2018-04-12; просмотров: 333.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...