Вход

Тренажер по арифметике

Рекомендуемая категория для самостоятельной подготовки:
Курсовая работа*
Код 94620
Дата создания 2015
Страниц 31
Источников 6
Мы сможем обработать ваш заказ (!) 22 ноября в 12:00 [мск]
Файлы будут доступны для скачивания только после обработки заказа.
2 980руб.
КУПИТЬ

Содержание

Содержание
ВВЕДЕНИЕ 3
1. Программирование на языке Java 4
1.1. История языка Java 4
1.2. Особенности языка Java 5
1.3. Основные типы переменных в Java 6
1.4. Основные операторы в Java 8
1.5. Условные операторы в Java 9
1.6. Циклы в Java 11
1.7. Объектно-ориентированное программирование 12
2. Постановка задачи и алгоритм программы 15
2.1. Формулировка задания 15
2.2. Описание решения поставленной задачи 15
ЗАКЛЮЧЕНИЕ 22
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 23
ПРИЛОЖЕНИЕ 1. ТЕКСТ ПРОГРАММЫ 24
ПРИЛОЖЕНИЕ 2. КОНСОЛЬНЫЙ ИНТЕРФЕЙС ПРОГРАММЫ 30

Фрагмент работы для ознакомления

int place;String input4;int lost;int sum=0;for (int i=0;i<Integer.parseInt(input3);i++){input4="";place = rand.nextInt(3);switch(place){case 1:System.out.println("__"+input2+second[i]+"="+result[i]);lost=first[i];break;case 2:System.out.println(first[i]+input2+"__"+"="+result[i]);lost=second[i];break;case 3:System.out.println(first[i]+input2+second[i]+"="+"__");lost=result[i];break;default:System.out.println(first[i]+input2+second[i]+"="+"__");lost=result[i];break;}Затем производится проверка на числовое значение вводимого пользователем ответа. Если пользователь ввел ответ на пример некорректно (например, ошибочно ввел строковое значение), то ему предлагается повторить ввод.while(((input4.replaceAll("\\d+","").length() > 0)&&(!(input4.replaceAll("\\d+","").equals("-"))))||(input4.length()==0)||(input4.trim().equals("-"))){System.out.println("Введите пропущенное число:");input4 = scanner.nextLine();if (((input4.replaceAll("\\d+","").length() > 0)&&(!(input4.replaceAll("\\d+","").equals("-"))))||(input4.length()==0)||(input4.trim().equals("-"))){System.out.println("Вы ввели недопустимый ответ! Вам необходимо ввести число!");}}Далее проводится анализ введенного пользователем числа и фиксация количества сделанных ошибок. Если ответ верный, то пользователь видит сообщение: «Ответ правильный». В противном случае пользователю выводится сообщение: «Ответ не правильный».if (Integer.parseInt(input4)==lost) {mistakes[i]=1;System.out.println("Ответ правильный");}else{mistakes[i]=0;System.out.println("Ответ не правильный");sum++;}}По итогам выполненных заданий выводится количество допущенных ошибок.System.out.println("Решение примеров закончено!");System.out.println("Количество допущеных ошибок: "+sum);scanner.close();}} Таким образом было написано консольное приложение «Тренажер по арифметике».На рисунке 1 показаны примеры,сгенерированные с помощью написанной программы. Рисунок 1. Генерирование примеров с помощью программы «Тренажер по арифметике»В приложении 1 представлен исходный код написанной программы. В приложении 2 показаны примеры запуска приложения.ЗАКЛЮЧЕНИЕВ представленном курсовом проекте были рассмотрены основные понятия языка программирования Java, а именно типы данных, условные операторы, циклы. Также были представлены основные принципы объектно-ориентированного программирования.В результате выполнения данного курсового проекта была создана интерактивная программа «Тренажер по арифметике». Потенциальное применение программы очень широко. С помощью этой программы возможно проведение тестированияна знание арифметики среди школьников. СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫВасильев А.Н. Java: Объектно-ориентированное программирование, – Санкт-Петербург, Питер,2011. – 396 с.Кен Арнольд, Джеймс Гослинг. Язык программирования Java. – Санкт-Петербург, Питер, 1997. - 304с.Кэти Сьерра, Берт Бейтс. Изучаем Java.Изд-во Эксмо, 2012.-708 c.Хорстманн К.С., Корнелл Г. Java. Библиотека профессионала. Том 1. Расширенные средства, 9-е изд.: Пер. с англ. – М.: ООО «И.Д. Вильямс», 2014. – 864 с.Хорстманн К.С., Корнелл Г. Java. Библиотека профессионала. Том 2. Расширенные средства, 9-е изд.: Пер. с англ. – М.: ООО «И.Д. Вильямс», 2014. – 1008 c.Эккель Б. Философия Java. Библиотека программиста.4-е изд.: Пер. с англ. – Санкт-Петербург, Питер, 2015. -1168 с.ПРИЛОЖЕНИЕ 1. ТЕКСТ ПРОГРАММЫimport java.util.Random;import java.util.Scanner;publicclass Main { publicstaticvoid main(String[] args) {//создаемобъект scanner класса ScannerScanner scanner = newScanner(System.in);//объявлениепеременнойдляхранениявводимойпользователемразрядностиоперандовString input1 ="";//проверкананатуральностьвводимойразрядностиоперандовwhile((input1.replaceAll("\\d+","").length() > 0)||(input1.length()==0)||(input1.trim().equals("0"))){System.out.println("Введите разрядность операндов:");// считываниеразрядностиоперандовinput1 = scanner.nextLine();if ((input1.replaceAll("\\d+","").length() > 0)||(input1.length()==0)||(input1.trim().equals("0"))){System.out.println("Вы ввели недопустимый тип разрядности операнда! Вам необходимо ввести натуральное число!");}}//объявлениепеременнойдляхранениятипаоперацииString input2 = ""; //проверкавведенногопользователемсимволаоперацииwhile (!(input2.trim().equals("+")||input2.trim().equals("-")||input2.trim().equals("*")||input2.trim().equals("/"))){System.out.println("Введите тип операции (+-*/):");//считываниетипаоперацииinput2 = scanner.nextLine();if (!(input2.trim().equals("+")||input2.trim().equals("-")||input2.trim().equals("*")||input2.trim().equals("/"))){System.out.println("Вы ввели недопустимый тип операции! Вам необходимо ввести один из символов +-*/");}}//объявлениепеременнойдляхраненияколичествапримеровString input3 = "";//проверкавводимогопользователемзначениядляколичествапримеровнанатуральностьwhile((input3.replaceAll("\\d+","").length() > 0)||(input3.length()==0)||(input3.trim().equals("0"))){System.out.println("Введите количество примеров:");// считываниеколичествапримеровinput3 = scanner.nextLine();if ((input3.replaceAll("\\d+","").length() > 0)||(input3.length()==0)||(input3.trim().equals("0"))){System.out.println("Вы ввели недопустимый тип количества примеров! Вам необходимо ввести натуральное число!");}}//объявлениепеременной, хранящейкодированныйтипоперации: 1 +; 2 -; 3 *; 4 /int type_operation = 1;//присвоениекодированногозначениятипаоперацииif ((input2).equals("+")){type_operation=1;}if ((input2).equals("-")){type_operation=2;}if ((input2).equals("*")){type_operation=3;}if ((input2).equals("/")){type_operation=4;}// создаемобъект, возвращающийслучайныечислаRandom rand = newRandom(System.currentTimeMillis());//создаеммассивпервыхчисел в примерахint[] first = newint [Integer.parseInt(input3)];//создаеммассиввторыхчисел в примерахint[] second = newint [Integer.parseInt(input3)];//создаеммассиврезультатовоперацийint[] result = newint [Integer.parseInt(input3)];//создаеммассивправильности/неправильностиответовпользователя: 0-неправильныйответ; 1-правильныйответint[] mistakes = newint [Integer.parseInt(input3)];//исходяизвведеннойразрядностичисел, максимальновозможноечисло в примереint max=(int) (Math.pow(10,Integer.parseInt(input1))-1);//исходя из введенной разрядности чисел, минимально возможное число в примереint min=(int) Math.pow(10,Integer.parseInt(input1)-1);for (int i=0;i<Integer.parseInt(input3);i++){// выбираем два произвольных числаfirst[i] = min+rand.nextInt(max-min+1);second[i] = min+rand.nextInt(max-min+1);//в зависимости от типа операции рассчитываем результат операцииswitch(type_operation){case 1:result[i]=first[i]+second[i];break;case 2:result[i]=first[i]-second[i];break;case 3:result[i]=first[i]*second[i];break;case 4:while (first[i] % second[i]!=0){first[i] = min+rand.nextInt(max-min+1);second[i] = min+rand.nextInt(max-min+1);}result[i]=first[i]/second[i];break;default:result[i]=first[i]+second[i];break;}}//объявление переменной, хранящей кодированное значение пропущенного числа: 1-первое число; 2-второе число; 3-результат вычисленияint place;//объявление переменной, в которой будет храниться ответ пользователяString input4;//объявление переменной, хранящей пропущенное числоint lost;//объявление переменной, хранящей количество допущенных пользователем ошибокint sum=0;for (int i=0;i<Integer.parseInt(input3);i++){input4="";// произвольным образом выбираем, какое число в примере будет пропущеноplace = rand.nextInt(3);//выводим пример под номером i,запоминаем пропущенное числоswitch(place){case 1:System.out.println("__"+input2+second[i]+"="+result[i]);lost=first[i];break;case 2:System.out.println(first[i]+input2+"__"+"="+result[i]);lost=second[i];break;case 3:System.out.println(first[i]+input2+second[i]+"="+"__");lost=result[i];break;default:System.out.println(first[i]+input2+second[i]+"="+"__");lost=result[i];break;}//проверка на числовое значение вводимого пользователем ответаwhile(((input4.replaceAll("\\d+","").length() > 0)&&(!(input4.replaceAll("\\d+","").equals("-"))))||(input4.length()==0)||(input4.trim().equals("-"))){System.out.println("Введите пропущенное число:");//считывание введенного пользователем числаinput4 = scanner.nextLine();if (((input4.replaceAll("\\d+","").length() > 0)&&(!(input4.replaceAll("\\d+","").equals("-"))))||(input4.length()==0)||(input4.trim().equals("-"))){System.out.println("Вы ввели недопустимый ответ! Вам необходимо ввести число!");}}//анализ введенного пользователем числаif (Integer.parseInt(input4)==lost) {mistakes[i]=1;System.out.println("Ответ правильный");}else{mistakes[i]=0;System.out.println("Ответ не правильный");sum++;}}System.out.println("Решение примеров закончено!");System.out.println("Количество допущеных ошибок: "+sum);scanner.close();}}ПРИЛОЖЕНИЕ 2. КОНСОЛЬНЫЙ ИНТЕРФЕЙС ПРОГРАММЫ

Список литературы [ всего 6]

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
1. Васильев А.Н. Java: Объектно-ориентированное программирование, – Санкт-Петербург, Питер,2011. – 396 с.
2. Кен Арнольд, Джеймс Гослинг. Язык программирования Java. – Санкт-Петербург, Питер, 1997. - 304с.
3. Кэти Сьерра, Берт Бейтс. Изучаем Java. Изд-во Эксмо, 2012.-708 c.
4. Хорстманн К.С., Корнелл Г. Java. Библиотека профессионала. Том 1. Расширенные средства, 9-е изд.: Пер. с англ. – М.: ООО «И.Д. Вильямс», 2014. – 864 с.
5. Хорстманн К.С., Корнелл Г. Java. Библиотека профессионала. Том 2. Расширенные средства, 9-е изд.: Пер. с англ. – М.: ООО «И.Д. Вильямс», 2014. – 1008 c.
6. Эккель Б. Философия Java. Библиотека программиста. 4-е изд.: Пер. с англ. – Санкт-Петербург, Питер, 2015. -1168 с.
Очень похожие работы
Найти ещё больше
Пожалуйста, внимательно изучайте содержание и фрагменты работы. Деньги за приобретённые готовые работы по причине несоответствия данной работы вашим требованиям или её уникальности не возвращаются.
* Категория работы носит оценочный характер в соответствии с качественными и количественными параметрами предоставляемого материала. Данный материал ни целиком, ни любая из его частей не является готовым научным трудом, выпускной квалификационной работой, научным докладом или иной работой, предусмотренной государственной системой научной аттестации или необходимой для прохождения промежуточной или итоговой аттестации. Данный материал представляет собой субъективный результат обработки, структурирования и форматирования собранной его автором информации и предназначен, прежде всего, для использования в качестве источника для самостоятельной подготовки работы указанной тематики.
bmt: 0.01014
© Рефератбанк, 2002 - 2024