Обработка элементов двумерного массива

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    58,93 Кб
  • Опубликовано:
    2015-06-23
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Обработка элементов двумерного массива

Введение

программа информационный пользователь

Целью курсового проекта является разработка программного обеспечения простой информационной системы на языке программирования Borland C++.Основной задачей курсового проектирования является умение использовать полученные знания и навыки при разработке программного обеспечения поставленной задачи. Разработанная информационная система реализует следующее функции:

-    вычисление количества элементов матрицы;

-       нахождение суммы элементов матрицы, значения которых не превышают заданное число;

-       вычисление суммы отрицательных нечетных чисел матрицы.

Пользовательский интерфейс основан на следующих принципах:

-    должен обеспечить простоту;

-       наглядность и эффективность при работе пользователя с программой;

-       строить пользовательский интерфейс на основе меню из 4 пунктов, каждое из которых выполняет определенное задание.

Результатом выполнения курсового проекта является верно работающее программное обеспечений информационной системы.

 

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

Разработать программу, обеспечивающую определение требуемых величин в двумерном массиве. Программа должна выводить на экран заставку с титульным листом курсового проекта (тема курсовой работы и ее исполнитель) и поставленной задачей, а также выполнять следующие задания:

1. Найти количество элементов матрицы.

2.      Найти сумму элементов, значения которых не превышают заданное число.

.        Найти сумму отрицательных нечетных чисел матрицы.

.        Осуществлять выход из программы.

.        Информирование о неправильно выбранном пункте.      

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

Программа должна осуществлять ввод и вывод элементов массива, вывод меню выбора выполняемых действий, результатов операций в соответствии с выбранным пунктом меню и выход из нее.

2.Описание математического метода решения задачи

Для того чтобы разработать и написать программу необходимо выполнить следующее:

-    определить организацию данных;

-    разработать механизм ввода и вывода данных;

-       определить метод сортировки данных;

-       разработать структуру и организацию пользовательского интерфейса.

В соответствии с заданием используется двумерный массив, элементами которого являются целые числа. Ввод данных осуществляем с помощью клавиатуры.

При обработке данных:

1.   Вывели массив на экран, чтобы показать пользователю, с чем мы будем работать. Для нахождения количества элементов матрицы программа проверяет все значения матрицы и записывает в переменную sum количество этих значений. После выводит найденное количество элементов на экран и показывает пользователю сообщение о том, что он может вернуться в главное меню.

2.      Для нахождения суммы элементов, значения которых не превышают заданное число, введем само число и зададим ему определенное значение, введем переменную zoch, которая будет обозначать сумму всех подходящих нам элементов массива, и зададим формулу if (A[i] [j] < zch) zoch = zoch+A[i] [j]. Далее выводим на экран полученный результат и также показываем сообщение о переходе в меню.

3.      Для нахождения суммы нечетных отрицательных элементов массива cначала вводим элементы массива. После по формуле if (A[i] [j]<0 && A[i] [j]%2!= 0) pr1+=A[i] [j] считается сумма элементов, удовлетворяющих условию задачи и выводится на экран.

Пользовательский интерфейс должен обеспечить простоту, наглядность и эффективность при работе пользователя с программой, для этого будем строить пользовательский интерфейс на основе меню из 4 пунктов, каждое из которых выполняет определенное задание.

. Описание алгоритма решения задачи

Алгоритм программы построен на основе использования оператора CASE, осуществляющего выбор из произвольного числа имеющихся вариантов, каждый из которых выполняет определенную задачу.

Главная программа выдает на экран дисплея меню, осуществляет обработку действий пользователя при выборе пункта меню, производит обращение к процедуре, соответствующей выбранному пункту меню или выход из программы. При этом выполняется последовательность действий согласно схеме главной программы (приложение А):

-    вывод главного меню на экран;

-       организация цикла для выбора текущего пункта меню;

-    выполнение определенной задачи, в выбранном пункте меню;

-    вывод ошибки при выборе несуществующего пункта;

-       выход из программы.

В зависимости от выбранного пункта меню выполняется следующая последовательность действий:

-    при выборе пункта 1 выполняется нахождение количества элементов матрицы и выводится на экран;

-       при выборе пункта 2 выполняется нахождение суммы элементов матрицы, значения которых не превышают заданное число и выводятся на экран;

-       при выборе пункта 3 выполняется нахождение суммы отрицательных нечетных чисел элементов матрицы и выводится на экран;

-       при выборе пункта 4 выполняется выход из программы;

-       при выборе другого пункта выводится сообщение «Исправьтесь! Вы выбрали несуществующий пункт меню» и возврат в меню.

4. Описание программы решения задачи

Программа написана на языке программирования Borland C++. Она состоит из одной главной функции Voidmain ().

Каждый оператор выполняет определенную функцию:

-    clrscr () полностью очищает активное текстовое окно и помещает курсор в левый верхний угол;

-       getch() возвращает очередной символ, считанный с консоли, но не выводит этот символ на экран;

-       cout используется для отображения текста на экран;

-       endl является манипулятором вывода, который вставляет в выходной поток символ перехода на новую строку;

-       cin позволяет читать данные с терминала пользователя;

-       switch принимает выбор варианта решения, выполняя действия, основываясь на сравнении значения со списком констант символов или целых чисел;

-       case является оператором множественного выбора;

-       goto передает управление непосредственно на оператор, обозначенный меткой <имя метки>;

-       default будет выполняться, если ни один из операторов выбора case не содержит нужного числа;

-       CharToOem позволяет вывести на кран нужную нам информацию на русском языке;

-       printf является стандартной функцией для вывода в различные потоки значений разных типов, отформатированных согласно заданному шаблону.

Описание программы полностью соответствует описанию алгоритма решения задачи.

5. Инструкция пользователю

Данная программа обеспечивает следующие функции:

-    вычисление количества элементов матрицы;

-       нахождение суммы элементов матрицы, значения которых не превышают заданное число;

-       вычисление суммы отрицательных нечетных чисел матрицы.

Для запуска программы необходимо запустить на выполнение файл.

При запуске информационной системы могут выдаваться следующие сообщения:

Сообщения

Для продолжения нажмите клавишу Enter

Нажатие клавиши Enter

Несуществующий пункт меню, для продолжения нажмите клавишу Enter

Нажатие клавиши Enter

Введите элементы массива

Заполнить с клавиатуры массив, используя клавиши 0-9 и Enter

Выберите действие

Выбрать пункт меню с помощью клавиш 0-9 и клавиши


Для завершения работы программы необходимо выбрать 4-й пункт меню «Выход» с меню информационной системы.

Заключение

По итогам проведенной работы можно сделать вывод, что цели курсового проекта были достигнуты.


Список используемых источников

1. #"865056.files/image001.gif">

Блок-схема алгоритма решения задачи

Приложение Б

Листинг программы

#include<vcl.h>

#include <iostream>

#include <stdio.h>

#include <math.h>

#include <time.h>

#include <windows.h>

#include <conio.h>namespace std;Rus[256];main()

{i, j, A[4] [4], oper, min, zoch, zch, sum, pr1;(«cls»);(«\n Министерство образования Пензенской области», Rus);<< Rus << endl;(«\n ГАПОУ ПО Пензенский многопрофильный колледж\n», Rus);<< Rus << endl;(«\n Кузнецкий филиал\n», Rus);<< Rus << endl;(«\n»);(«\n»);(«\n КУРСОВОЙ ПРОЕКТ\n», Rus);<< Rus << endl;

cout << Rus << endl;

CharToOem (» Тема: Обработка элементов двумерного массива», Rus);

cout << Rus << endl;(«\n»);(«\n»);(«\n»);(«\nВыполнила: студентка гр. 3п5», Rus);<< Rus << endl;(«\n Бадретдинова Лэйла», Rus);<< Rus << endl;(«\n»);(«\n 2015 год», Rus);<< Rus << endl;(«pause»);(«cls»);(«\n\n\n\n\n\n\n»);

CharToOem («\n Постановка задачи: разработать программу для определения требуемых величин», Rus);

cout << Rus << endl;(«\n в двумерном массиве. \n», Rus);<< Rus << endl;(«\n\n\n\n\n\n\n\n\n\n»);(«pause»);(«cls»);(«\nВведите элементы массива:\n», Rus);<< Rus << endl;(i = 0; i<4; i++)

{(j = 0; j<4; j++)

{<< «A [» << i <<»]» << «[» << j <<»]=»; cin >> A[i] [j];

}

}(«\nВведённый массив:\n», Rus);<< Rus << endl;(i = 0; i<04; i++)

{(j = 0; j<4; j++) printf («%5d», A[i] [j]);(«\n»);

}(«\n»);(«\n»);(«pause»);:system («cls»); («\n Выберите действие:», Rus);<< Rus << endl;(«\n1 - Найти количество элементов матрицы», Rus);

cout << Rus << endl;(«\n2 - Сосчитать сумму элементов матрицы, значения которых не превышают заданое число», Rus);<< Rus << endl;(«\n3 - Найти сумму отрицательных нечетных чисел», Rus);

cout << Rus << endl;(«\n4 - выход», Rus);<< Rus << endl;(«\nОперация -», Rus);<< Rus;>> oper;(«pause»);(«cls»);(oper)

{1: {CharToOem («\tНахождение количества элементов матрицы \n», Rus);<< Rus << endl;(«\nВ массиве:\n», Rus);<< Rus << endl;(i = 0; i < 4; i++)

{(j = 0; j < 4; j++) printf («%5d», A[i] [j]);(«\n»);

}(i = 0; i < 4; i++)(j = 0; j < 4; j++)++;(«\n»);

}

{

CharToOem («\Количество элементов матрицы =», Rus);

cout << Rus << sum << endl;(«\n\n\n\n\n\n\n\n\n\n\n»);(«pause»);k;

}

}2: {CharToOem («\n Сумма элементов в матрице не превышающих заданное число», Rus);

cout << Rus << endl;(«\n       значения которых не превышают заданое число\n», Rus);

cout << Rus << endl;(«\nВведите это число:», Rus);<< Rus << endl;>> zch;= 1;(i = 0; i < 4; i++)

{(j = 0; j < 4; j++)(A[i] [j] < zch) zoch = zoch+A[i] [j];

}

}

CharToOem («\n Сумма элементов в матрице, не превышающих заданное число:», Rus);

cout << Rus << zoch << endl;(«\n\n\n\n\n»);(«pause»);k;

}3: {CharToOem («\tСумма отрицательных нечетных чисел\n», Rus);<<Rus<<endl;(«\n В массиве:\n», Rus);<<Rus<<endl;(i=0; i<4; i++)

{for (j=0; j<4; j++) printf («%5d», A[i] [j]);(«\n»);

}=0;(i=0; i<4; i++)(j=0; j<4; j++)(A[i] [j]<0 && A[i] [j]%2!= 0)

pr1+=A[i] [j];

CharToOem («\n Сумма отрицательных нечетных чисел равна», Rus);

cout<<Rus<<pr1<<endl;(«\n\n\n\n\n\n\n\n»);(«pause»);k;

}4: {exit(0);}: {printf («\n\n\n\n\n\n\n»);(«\n Исправьтесь!», Rus);<< Rus << endl; («\n Вы выбрали несуществующий пункт меню», Rus);

cout << Rus << endl;(«\n\n\n\n\n\n\n\n\n»);(«pause»);k;}

}

}


Приложение В

Результат выполнения программы

Титульный лист

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



Меню

Результат выполнения программы №1

Результат выполнения программы №2


Результат выполнения программы №3

Вывод сообщения об ошибке

Похожие работы на - Обработка элементов двумерного массива

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!