Главная страница
Навигация по странице:

  • Номер теста Назначение теста Входные данные Выходные данные

  • Разработать консольное приложение на языке java, реализующее решение задачи в соответствии с индивидуальным заданием. Лаба1 Бондаренко. 1 Блоксхема алгоритма 3 2 Таблица спецификации переменных 4


    Скачать 1.24 Mb.
    Название1 Блоксхема алгоритма 3 2 Таблица спецификации переменных 4
    АнкорРазработать консольное приложение на языке java, реализующее решение задачи в соответствии с индивидуальным заданием
    Дата22.03.2022
    Размер1.24 Mb.
    Формат файлаdocx
    Имя файлаЛаба1 Бондаренко.docx
    ТипЗадача
    #408123

    Содержание


    1 Блок-схема алгоритма 3

    2 Таблица спецификации переменных 4

    3 Таблица тестов 4

    4Результаты тестирования 4

    5Исходный код 4

    1Блок схема алгоритма 6

    2Таблица спецификации переменных 7

    3Таблица тестов 7

    4Результаты тестирования 7

    5Исходный код 8

    1Блок-схема алгоритма 9

    2Таблица спецификации переменных 10

    3Таблица тестов 10

    4Результаты тестирования 10

    5Исходный код 10

    Постановка задачи


    Разработать консольное приложение на языке java, реализующее решение задачи в соответствии с индивидуальным заданием. Исходные данные для задачи вводятся как параметры при запуске программы из командной строки, либо – как значения, инициализирующие переменные. Вывод результатов осуществляется в консоль.

    Вариант №4:

    a. Найдите символ в строке, который встречается наибольшее число раз.

    b. Найдите самое длинное слово в предложении.

    c. Удалите в предложении каждое третье слово.

    Задача 1

    1 Блок-схема алгоритма




    Рисунок 1– Блок-схема алгоритма задачи 1

    2 Таблица спецификации переменных


    Таблица 1 – Таблица спецификации переменных



    Имя

    Назначение

    Тип

    ОДЗ




    1

    str

    Входные данные — Строка / текст введенный пользователем

    String




    2

    max

    Выходные данные — Символ встречающийся наибольшее число раз в строке, введенной пользователем

    char



    3 Таблица тестов


    Таблица 2 – Таблица тестов

    Номер теста

    Назначение теста

    Входные данные

    Выходные данные

    1

    Нахождение символа в строке встречающийся наибольшее число раз

    “Hello world!”

    Символ в строке, встречающийся наибольшее число раз: ‘l’
    1. Результаты тестирования




    Рисунок 2 – результат теста №1
    1. Исходный код


    package ISMb_19_1_Bondarenko;

    import java.util.Scanner;

    import java.util.HashMap;

    import java.util.Iterator;

    import java.util.Map;

    import java.util.Map.Entry;

    import java.util.Set;

    public class L1_4_a {
    public static void main(String[] args) {

    Scanner in = new Scanner(System.in);

    System.out.println("ВВедите строку:");

    String str = in.nextLine();
    HashMap mapword = new HashMap<>(); /*словарь, в котором элементы будут храниться

    в формате “буква-число”. буква будет выступать ключом, а число — значением. */
    for (int i = 0; i < str.length(); i++) {

    Character symbol = str.charAt(i); /*Метод charAt() — возвращает символ, расположенный по указанному индексу строки.*/

    int k=0;

    if (mapword.containsKey(symbol)) { /*метод containsKey () используется для проверки того, сопоставляется ли конкретный ключ с картой или нет.*/

    k = mapword.get(symbol) + 1; /*Получив ключ, можем получить элемент, сохраненный для этого ключа, с помощью метода get().*/
    }

    mapword.put(symbol, k); /*метод put()-добавить элементы*/

    }
    Set> set = mapword.entrySet(); // Использование entrySet () для получения записей карты

    Iterator> iterator = set.iterator(); //Итератор-перебор по Set

    Map.Entry max = null;

    while (iterator.hasNext()) {

    Map.Entry x = iterator.next();

    if (max == null) {

    max = x;

    } else if (me.getValue() > max.getValue()) {

    max = x;

    }
    }System.out.println("Cимвол в строке, встречающийся наибольшее число раз : \'" + max.getKey() + "\'.");

    }

    }

    Задача 2

    1. Блок схема алгоритма




    Рисунок 3 – Блок-схема алгоритма задачи 2
    1. Таблица спецификации переменных


    Таблица 3 – Таблица спецификации переменных



    Имя

    Назначение

    Тип

    ОДЗ




    1

    str

    Входные данные — Строка / текст введенный пользователем

    String




    2

    word

    Выходные данные — Строка, содержащая самое длинное слово в предложении

    String



    1. Таблица тестов


    Таблица 4 – Таблица тестов

    Номер теста

    Назначение теста

    Входные данные

    Выходные данные

    1

    Нахождение самого длинного слова в предложении

    Я пришел к тебе с приветом Рассказать что солнце встало Что оно горячим светом По листам затрепетало


    Самое длинное слово в предложении: затрепетало

    2

    Нахождение самого длинного слова в предложении, в котором имеются знаки препинания

    Я пришел к тебе с приветом, Рассказать, что солнце встало, Что оно горячим светом По листам затрепетало


    Самое длинное слово в предложении: затрепетало
    1. Результаты тестирования


    Тест №1



    Рисунок 4 – результат теста №1

    Тест №2



    Рисунок 5 – результат теста №2
    1. Исходный код


    package ISMb_19_1_Bondarenko;

    import java.util.Scanner;

    public class L1_4_b {

    public static void main(String[] args) {

    Scanner in = new Scanner(System.in);

    String str = in.nextLine();

    String word="";

    int l=0;

    str=str.replaceAll("[!,.:?]", "");

    String[] subStr=str.split(" ");
    for (int i=0; i
    if(subStr[i].length()>l){

    l=subStr[i].length();

    word=subStr[i];

    }

    }

    System.out.println("Самое длинное слово в предложении:"+word);

    }

    }

    Задача 3

    1. Блок-схема алгоритма




    Рисунок 6 – Блок-схема алгоритма задачи 3
    1. Таблица спецификации переменных


    Таблица 5 – Таблица спецификации переменных



    Имя

    Назначение

    Тип

    ОДЗ




    1

    str

    Входные данные — Строка / текст введенный пользователем

    String




    2

    str

    Выходные данные — Строка, полученная путем удаления каждого третьего слова из строки, введенной пользователем

    String



    1. Таблица тестов


    Таблица 6 – Таблица тестов

    Номер теста

    Назначение теста

    Входные данные

    Выходные данные

    1

    Удаление в строке каждого 3 слова

    Я пришел к тебе с приветом рассказать что солнце встало

    Я пришел тебе с рассказать что встало
    1. Результаты тестирования




    Рисунок 4 – результат теста №1
    1. Исходный код


    package ISMb_19_1_Bondarenko;

    import java.util.Scanner;

    public class L1_4_c {

    public static void main(String[] args) {

    Scanner in = new Scanner(System.in);

    String str = in.nextLine();

    String[] subStr=str.split(" ");

    for (int i=0; i
    if((i+1)%3==0){

    str=str.replaceAll(subStr[i], "");

    }

    }

    System.out.println(str);

    }

    }

    Заключение


    В процессе выполнения лабораторной работы 1: “Разработка консольного приложения” были разработаны алгоритмы решения индивидуального задания. Было сформированы тесты, покрывающие все ситуации. Составленные на языке Java программы, реализующие разработанные алгоритмы, прошла все тесты успешно.

    В ходе лабораторной работы были получены практические навыки использования конструкций языка Java, а также знакомство с платформой.

    Все цели практики достигнуты.

    Список литературы


    1. Java. Экспресс-курс [электронный ресурс] // Сайт Александра Климова [сайт], URL: http://developer.alexanderklimov.ru/android/java/java.php

    2. API Specification for the Java 7 SE. [официальный сайт] URL: http://docs.oracle.com/javase/7/docs/api/

    3. The Java Tutorials. SE [электронный ресурс], URL: http://docs.oracle.com/javase/tutorial/index.html

    4. Гради Буч, Роберт А. Максимчук, Майкл У. Энгл, Бобби Дж. Янг, Джим Коналлен, Келли А. Хьюстон. Объектно-ориентированны анализ и проек-тирование с примерами приложений. Третье издание. М.: "Вильямс", 2010.

    5. Хабибуллин И.Ш. Java 7: для программистов / И. Ш. Хабибуллин. – Санкт-Петербург : БХВ–Петербург, 2014.




    написать администратору сайта