Вы находитесь на странице: 1из 11

ХАРЬКОВСКИЙ НАЦИОНАЛЬНЫЙ ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

ИМЕНИ СЕМЕНА КУЗНЕЦА

КАФЕДРА ИНФОРМАЦИОННЫХ СИСТЕМ

Отчет

по лабораторной работе № 1

по учебной дисциплине «Объектно-ориентированное программирование» на тему:


«Разработка приложений с использованием базовых элементов ООП»

Выполнила:
студентка 2 курса группы 6.04.122.010.19.1
факультета ЭИ
Исакова К.О.

Проверил:
доцент кафедры ИС
к.т.н., с.н.с. Парфенов Ю.Э.

г. Харьков – 2020 год


2

СОДЕРЖАНИЕ

Задание 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Задание 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Выводы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3

Задание 1

Условие задания
Разработать программу на языке С# для вывода на консоль ведомость объема
поставок продукции в натуральном та ценовом выражении. (Вариант 8)

Исходный код программы

using System;
public class bbb
{
private string nazva;
private string shifr;
private int obsiag;
private int optova_cina;
public bbb(string nazva, string shifr, int obsiag, int optova_cina)
{
this.nazva = nazva;
this.shifr = shifr;
this.obsiag = obsiag;
this.optova_cina = optova_cina;
}
public string getNazva() { return nazva; }
public string getShifr() { return shifr; }
public int getObsiag() { return obsiag; }
public int getOptova_cina() { return optova_cina; }
public int getObsiag_postavki() { return obsiag * optova_cina; }
}
namespace MainClass1
{
class Program
{
public static double sumObsiag(bbb[] list)
{
double sum = 0;
for (int i = 0; i < list.Length; i++)
sum += list[i].getObsiag();
return sum;
}
public static double sumOptova_cina(bbb[] list)
{
double sum = 0;
for (int i = 0; i < list.Length; i++)
sum += list[i].getOptova_cina();
return sum;
}
public static double sumObsiag_postavki(bbb[] list)
{
double sum = 0;
for (int i = 0; i < list.Length; i++)
sum += list[i].getObsiag_postavki();
return sum;
}
public static void formatPrintOrder(bbb[] list)
4

Console.WriteLine("_____________________________________________________________________________
___________________________________________________");
Console.WriteLine(String.Format("|{0,2} |{1,12} |{2,15} |{3,25} |{4,25} |{5,25} |", "№",
"Продукція", "Шифр", "Обсяг поставки, шт.", "Оптова ціна, грн.", "Обсяг поставки, грн."));
for (int i = 0; i < list.Length; i++)
{
Console.WriteLine(String.Format("|{0,2} |{1,12} |{2,15} |{3,25} |{4,25} |{5,25}
|", i + 1, list[i].getNazva(), list[i].getShifr(), list[i].getObsiag(), list[i].getOptova_cina(),
list[i].getObsiag_postavki()));
}

Console.WriteLine("_____________________________________________________________________________
___________________________________________________");
Console.WriteLine(String.Format("|{0,2} |{1,12} |{2,15} |{3,25} |{4,25} |{5,25} |", " ",
"Разом", " ", sumObsiag(list), sumOptova_cina(list), sumObsiag_postavki(list)));

Console.WriteLine("_____________________________________________________________________________
___________________________________________________");
}
static void Main(string[] args)
{
bool program_end = false;
int count = 0;
bbb[] kiwiList = new bbb[count];
string nazva;
string shifr;
int obsiag;
int optova_cina;
Console.OutputEncoding = System.Text.Encoding.Default;
do
{
Console.WriteLine("Варіант 8");
Console.WriteLine("<<Відомість обсягу поставок продукції в натуральному та
вартісному вираженні>>");
Console.WriteLine("Натисніть 1 - аби створити нову відомість\nНатисніть 2 - щоб
показати таблицю\nНатисніть 0 - аби вийти із програми");
int n = int.Parse(Console.ReadLine());
if (n == 1)
{
Console.WriteLine("Введіть кількість записів, які ви бажаєте додати");
count = int.Parse(Console.ReadLine());
kiwiList = new bbb[count];
for (int i = 0; i < count; i++)
{
Console.WriteLine("Введіть назву " + (i + 1) + "-ї продукції");
nazva = Console.ReadLine();
Console.WriteLine("Введіть шифр " + (i + 1) + "-ї продукції");
shifr = Console.ReadLine();
Console.WriteLine("Введіть обсяг поставки " + (i + 1) + "-ї
продукції");
obsiag = int.Parse(Console.ReadLine());
5

Console.WriteLine("Введіть оптову ціну " + (i + 1) + "-ї продукції");


optova_cina = int.Parse(Console.ReadLine());
bbb _kiwi = new bbb(nazva, shifr, obsiag, optova_cina);
kiwiList[i] = _kiwi;
}
}
if (n == 2)
{
formatPrintOrder(kiwiList);
Console.WriteLine("Натисніть Enter щоб продовжити");
Console.ReadKey();
}
Console.Clear();
if (n == 0)
{
program_end = true;
Console.WriteLine("Завершення програми");
}
} while (!program_end);
}
}
}
Примеры результатов работы программы

План тестирования

№ Входные данные Ожидаемый Полученный результат Отметка о


1-е число 2-е число результат прохождении
теста
11 1600 4 6400 3600 10 184000 6400 3600 10 184000 +
22 2000 6 5 12000 5 12000 +
6
7

Задание 2

Условие задания
Разработать программу на языке Java для вывода на консоль ведомость объема
поставок продукции в натуральном та ценовом выражении. (Вариант 8)

Архитектура:

Исходный код программы


package com.company;
import java.util.Scanner;
import java.text.*;

class bbb
{
private final String nazva;
private final String shifr;
private final int obsiag;
private final int optova_cina;

public bbb(String nazva, String shifr, int obsiag, int optova_cina)


{
this.nazva = nazva;
this.shifr = shifr;
this.obsiag = obsiag;
8

this.optova_cina = optova_cina;
}
public String getNazva() { return nazva; }
public String getShifr() { return shifr; }
public int getObsiag() { return obsiag; }
public int getOptova_cina() { return optova_cina; }
public int getObsiag_postavki() { return obsiag * optova_cina; }

public class Main {


public static int sumObsiag(bbb[] list)
{
int sum = 0;
for (bbb order : list) sum += order.getObsiag();
return sum;
}
public static int sumOptova_cina(bbb[] list)
{
int sum = 0;
for (bbb order : list) sum += order.getOptova_cina();
return sum;
}
public static int sumObsiag_postavki(bbb[] list)
{
int sum = 0;
for (bbb order : list) sum += order.getObsiag_postavki();
return sum;
}
public static void formatPrintOrder(bbb[] list)
{

System.out.println("____________________________________________________________________________
____________________________________");
System.out.printf("|%-2s|%-18s|%-15s|%-25s|%-25s|%-20s|\n%n","№", "Продукція", "Шифр",
"Обсяг поставки, шт.", "Оптова ціна, грн.","Обсяг поставки, грн.");
for(int i = 0;i < list.length; i++)
{
System.out.printf("|%-2s|%-18s|%-15s|%-25s|%-25s|%-20s|\n%n", i+1,
list[i].getNazva(),list[i].getShifr(),list[i].getObsiag(),list[i].getOptova_cina(), list[i].getObsiag_postavki());
}

System.out.println("____________________________________________________________________________
_______________________________");
System.out.printf("|%-2s|%-18s|%-15s|%-25s|%-25s|%-20s|\n%n", " ", "Разом", " ", sumObsiag(list),
sumOptova_cina(list), sumObsiag_postavki(list));
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
9

boolean program_end = false;


int count = 0;
bbb[] kiwiList = new bbb[count];
String nazva;
String shifr;
int obsiag;
int optova_cina;

do
{
System.out.println("Варіант 8");
System.out.println("<<Відомість обсягу поставок продукції в натуральному та вартісному
вираженні>>");
System.out.println("Натисніть 1 - аби створити новий облік\nНатисніть 2 - щоб показати
таблицю\nНатисніть 0 - аби вийти із програми");
int n = in.nextInt();
if(n == 1)
{
System.out.println("Введіть кількість записів, які ви бажаєте додати");
count = in.nextInt();
kiwiList = new bbb[count];
for(int i = 0; i < count; i++)
{
System.out.println("Введіть назву " + (i+1) + "-ї продукції");
nazva = in.next();
System.out.println("Введіть шифр " + (i+1) + "-ї продукції");
shifr = in.next();
System.out.println("Введіть обсяг поставки " + (i + 1) + "-ї продукції");
obsiag = in.nextInt();
System.out.println("Введіть оптову ціну " + (i + 1) + "-ї продукції");
optova_cina = in.nextInt();
bbb _kiwi = new bbb(nazva, shifr, obsiag, optova_cina);
kiwiList[i] = _kiwi;
}
}
if(n == 2)
{
formatPrintOrder(kiwiList);
System.out.println("Натисніть Enter щоб продовжити");
System.out.println();
}
if (n == 0) {
program_end = true;
System.out.println("Завершення програми");
}
} while (!program_end);
}
}
10

Примеры результатов работы программы


11

Выводы

В ходе выполнения лабораторной работы № 1 я получила практические навыки


по созданию простых консольных программ с использованием основных элементов
языков C# и Java, а также сред разработки Microsoft Visual Studio и IntelliJ IDEA.
Разработанные программы полностью соответствуют постановке задачи. Результаты
их работы на тестовых исходных данных соответствуют ожидаемым.