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

Разработка программного обеспечения заданной информационной системы. Описание алгоритма и математического метода решения задачи. Этапы формирования и реализации программы, ее листинг и оценка функциональности. Разработка инструкции пользователя.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 23.06.2015
Размер файла 223,9 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Введение

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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 пунктов, каждое из которых выполняет определенное задание.

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

Алгоритм программы построен на основе использования оператора 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. http://www.codenet.ru/progr/bcb/borland_builder/

2. http://www.bourabai.kz/C-Builder/simple-bcpp.pdf

3. http://www.c-cpp.ru/books/

4. http://cppstudio.com/post/389/

5. http://www.helloworld.ru/texts/comp/lang/builder/builder/1.htm

Приложение А

Структурная схема

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

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

Приложение Б

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

#include<vcl.h>

#include <iostream>

#include <stdio.h>

#include <math.h>

#include <time.h>

#include <windows.h>

#include <conio.h>

using namespace std;

char Rus[256];

void main()

{

int i, j, A[4] [4], oper, min, zoch, zch, sum, pr1;

system («cls»);

CharToOem («\n Министерство образования Пензенской области», Rus);

cout << Rus << endl;

CharToOem («\n ГАПОУ ПО Пензенский многопрофильный колледж\n», Rus);

cout << Rus << endl;

CharToOem («\n Кузнецкий филиал\n», Rus);

cout << Rus << endl;

printf («\n»);

printf («\n»);

CharToOem («\n КУРСОВОЙ ПРОЕКТ\n», Rus);

cout << Rus << endl;

cout << Rus << endl;

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

cout << Rus << endl;

printf («\n»);

printf («\n»);

printf («\n»);

CharToOem («\nВыполнила: студентка гр. 3п5», Rus);

cout << Rus << endl;

CharToOem («\n Бадретдинова Лэйла», Rus);

cout << Rus << endl;

printf («\n»);

CharToOem («\n 2015 год», Rus);

cout << Rus << endl;

system («pause»);

system («cls»);

printf («\n\n\n\n\n\n\n»);

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

cout << Rus << endl;

CharToOem («\n в двумерном массиве. \n», Rus);

cout << Rus << endl;

printf («\n\n\n\n\n\n\n\n\n\n»);

system («pause»);

system («cls»);

CharToOem («\nВведите элементы массива:\n», Rus);

cout << Rus << endl;

for (i = 0; i<4; i++)

{

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

{

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

}

}

CharToOem («\nВведённый массив:\n», Rus);

cout << Rus << endl;

for (i = 0; i<04; i++)

{

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

printf («\n»);

}

printf («\n»);

printf («\n»);

system («pause»);

k:system («cls»);

CharToOem («\n Выберите действие:», Rus);

cout << Rus << endl;

CharToOem («\n1 - Найти количество элементов матрицы», Rus);

cout << Rus << endl;

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

cout << Rus << endl;

CharToOem («\n3 - Найти сумму отрицательных нечетных чисел», Rus);

cout << Rus << endl;

CharToOem («\n4 - выход», Rus);

cout << Rus << endl;

CharToOem («\nОперация -», Rus);

cout << Rus;

cin >> oper;

system («pause»);

system («cls»);

switch (oper)

{

case 1: {CharToOem («\tНахождение количества элементов матрицы \n», Rus);

cout << Rus << endl;

CharToOem («\nВ массиве:\n», Rus);

cout << Rus << endl;

for (i = 0; i < 4; i++)

{

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

printf («\n»);

}

for (i = 0; i < 4; i++)

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

sum++;

printf («\n»);

}

{

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

cout << Rus << sum << endl;

printf («\n\n\n\n\n\n\n\n\n\n\n»);

system («pause»);

goto k;

}

}

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

cout << Rus << endl;

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

cout << Rus << endl;

CharToOem («\nВведите это число:», Rus);

cout << Rus << endl;

cin >> zch;

zoch = 1;

for (i = 0; i < 4; i++)

{

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

if (A[i] [j] < zch) zoch = zoch+A[i] [j];

}

}

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

cout << Rus << zoch << endl;

printf («\n\n\n\n\n»);

system («pause»);

goto k;

}

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

cout<<Rus<<endl;

CharToOem («\n В массиве:\n», Rus);

cout<<Rus<<endl;

for (i=0; i<4; i++)

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

printf («\n»);

}

pr1=0;

for (i=0; i<4; i++)

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

if (A[i] [j]<0 && A[i] [j]%2!= 0)

pr1+=A[i] [j];

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

cout<<Rus<<pr1<<endl;

printf («\n\n\n\n\n\n\n\n»);

system («pause»);

goto k;

}

case 4: {exit(0);}

default: {printf («\n\n\n\n\n\n\n»);

CharToOem («\n Исправьтесь!», Rus);

cout << Rus << endl;

CharToOem («\n Вы выбрали несуществующий пункт меню», Rus);

cout << Rus << endl;

printf («\n\n\n\n\n\n\n\n\n»);

system («pause»);

goto k;}

}

}

Приложение В

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

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

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

Заполнение массива A

Меню

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

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

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

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

Размещено на Allbest.ru


Подобные документы

  • Решения задачи графическим и программным способами. Описание алгоритма решения графическим способом, укрупненная схема алгоритма. Ввод элементов двумерного массива, вывод преобразованного массива, разработка программы на языке pascal, листинг программы.

    курсовая работа [115,5 K], добавлен 22.05.2010

  • Описание алгоритма решения задачи графическим способом. Ввод элементов исходного массива в цикле. Нахождение определённых элементов. Сортировка элементов с помощью пузырькового метода. Разработка программы на языке Pascal. Поиск наибольшего элемента.

    лабораторная работа [123,5 K], добавлен 15.01.2014

  • Описание алгоритма решения задачи графическим способом. Вывод элементов массива. Описание блоков укрупненной схемы алгоритма на языке Pascal. Листинг программы, а также ее тестирование. Результат выполнения c помощью ввода различных входных данных.

    контрольная работа [150,4 K], добавлен 03.05.2014

  • Приемы программирования в Delphi. Алгоритм поиска альфа-бета отсечения, преимущества. Описание программного средства. Разработка программы, реализующая алгоритм игры "реверси". Руководство пользователя. Листинг программы. Навыки реализации алгоритмов.

    курсовая работа [357,1 K], добавлен 28.02.2011

  • Описание алгоритма решения задачи по вычислению суммы элементов строк матрицы с использованием графического способа. Детализация укрупненной схемы алгоритма и разработка программы для решения задачи в среде Turbo Pascal. Листинг и тестирование программы.

    курсовая работа [446,0 K], добавлен 19.06.2014

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

    дипломная работа [5,6 M], добавлен 29.06.2011

  • Рассмотрение системы трехмерного твердотельного моделирования. Анализ средств программирования, информационное обеспечение и описание объектной модели Компас-3d. Описание алгоритма программы в среде Borland Delphi 7 и составление инструкции пользователя.

    дипломная работа [1,7 M], добавлен 03.07.2012

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

    курсовая работа [44,0 K], добавлен 09.11.2014

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

    дипломная работа [1007,7 K], добавлен 03.07.2015

  • Разработка СУБД - программного модуля для систематизации, хранения и обработки сведений о работниках лаборатории. Технологический процесс машинной реализации задачи, составление алгоритма, описание переменных процедур и функций. Листинг программы.

    курсовая работа [1,7 M], добавлен 11.01.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.