Главная страница

Задача 25


Скачать 0.8 Mb.
НазваниеЗадача 25
Дата16.12.2018
Размер0.8 Mb.
Формат файлаdocx
Имя файлаKursach!!!.docx
ТипЗадача
#60510

Содержание

Введение……………………………………………………………………………...…4

1.Описание среды разработки…………………………………………………………5

2.Общие сведение об алгоритмизации……………………………………………......9

3.Синтаксис языка С++……………………………………………………………….12

4.Вычислительные задачи…………………………………………………………….14

4.1 Задача 7.25…………………………………………………………………..14

4.2 Задача 9.21…………………………………………………………………..16

4.3 Задача 4.60………..…………………………………………………………18

4.4 Задача 11.15…………………………………………………………………22

5.Информационное обеспечение……………………………………………………..24

Заключение…………………………………………………………………………….25

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

Введение.

Программирование является востребованным практически во всех сферах нашей жизни. В первую очередь, оно позволяет в принципе существовать современному виртуальному миру, в котором проводит время практически каждый современный человек. Форумы, социальные сети и т.п. – все это поддерживается исключительно при помощи программистов, которые выполняют определенные правила и указания, представляющие собой алгоритм (это набор инструкций, описывающих порядок действий для достижения некоторого результата). На основе которого создается программа.

Для написания программ необходимо выбрать один из языков программирования, а также среду разработки. Несмотря на то, что С++ не разрабатывался для новичков, он активно изучается как первый язык программирования, мой выбор пал именно на него. Корни создания лежат в 80-ых годах XX века: он был придуман Бьёрном Страуструпом для собственных нужд. Со временем С++ не только стал языком, но и стал основой для многих других языков программирования высокого уровня. Среда разработки CodeBlick:: – это набор инструментов и средств, предназначенных для разработчиков программ, с широким набором поддерживаемых языков программирования. C++. Я остановилась на версии CodeBlock::, как удобной, простой и адаптированной под современный мир.

  1. [Бьерн Страуструп. Язык программирования С++.]

1. Описание среды разработки

CodeBlocks – среда программирования на языке C/C++


20.09.2017Константин Шереметьев

Code::Blocks – это бесплатная кроссплатформенная среда разработки на языке C/C++. На данный момент это лучшая бесплатная среда разработки на языке Си.

Code::Blocks разрабатывается для Windows, Linux и Mac OS X.

В среде Windows скачать эту среду удобнее всего в составе сборки Си-экспресс, в которой уже есть все необходимые библиотеки для начала работы. Сборка не требует установки и работает по принципу: “Распаковал и работай”.

Содержание

  • Поддерживаемые компиляторы

  • Готовые шаблоны

  • Редактор кода

  • Плагины

  • Отладчик

  • Итоги

Поддерживаемые компиляторы


Code::Blocks поддерживает следующие компиляторы:

  • GNU GCC (incl. G77) (Linux)

  • MinGW GCC (incl. G77) (Win32)

  • MSP430 GCC (Win32)

  • TriCore and PowerPC GCC (Win32, Linux)

  • Apple GCC (Xcode) (Mac OS X)

  • Microsoft Visual C++ Toolkit 2003 (Win32)

  • Microsoft Visual C++ 2005 (Win32)

  • Borland’s C++ Compiler 5.5 (Win32)

  • DigitalMars C/C++ (Win32)

  • OpenWatcom (Win32)

  • Intel C++ compiler (Win32)

  • Small Device C Compiler (SDCC)

  • Digital Mars D

  • GDC D Compiler

  • LLVM D Compiler


Готовые шаблоны


CodeBlocks имеет готовые шаблоны проектов, которые позволяют быстро создать минимальное приложение.

Главное меню:
http://progtips.ru/wp-content/uploads/2016/01/cb1.png

Главное меню (рис.1)

Редактор кода


http://progtips.ru/wp-content/uploads/2016/01/cb2.png

Редактор кода (рис.2)

Редактор кода обладает всеми возможностями для комфортной работы программиста:

  • Выделение синтаксиса (можно настроить под себя)

  • Интерфейс с вкладками

  • Автозавершение кода

  • Браузер классов

  • Умный отступ

  • Обмен одним кликом между файлами .h и .c / .cpp

  • Пользовательские сочетания клавиш

  • Внешние настраиваемые «Инструменты»

  • Управление списком дел с разными пользователями

Количество настроек редактора просто огромно:

http://progtips.ru/wp-content/uploads/2016/01/cb3.png

Настройки редактора (рис.3)
Кроме общих настроек также настраивается:

  • Сворачивание кода

  • Поля и курсор

  • Подсветка синтаксиса (отдельно по типам файлов)

  • Код по умолчанию для создаваемых файлов (можно вставить автоподпись)

  • Сокращения (при вводе сокращения оно автоматически разворачивается в код)

  • Форматирование кода

  • Способ сохранения и возврата к строчкам кода

  • Автодополнение кода

  • Настройка статистики кода

  • Генерация документирования кода

  • и многое другое

Плагины


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

  • HEX-редактор

  • Диаграммы Насси Шнейдермана

  • Экспорт исходного кода в другие форматы

  • Макросы нажатия клавиш

  • Горячие клавиши для меню

  • Инкрементный поиск

  • Переменные среды

  • и многие другие

Отладчик


В качестве отладчика по умолчанию CodeBlocks использует GDB – самый популярный отладчик для языка Си, который был разработан еще Ричардом Столменом.

Отладчик позволяет установить точки останова и затем пошагово выполнять код с одновременным мониторингом переменных и массивов. Также вы можете отслеживать стеки вызываемых функций.

Итоги


Количество возможностей и настроек среды CodeBlocks позволяют превратить эту среду в отличный инструмент Си-программиста.

[2. https://progtips.ru/instrumenty-programmista/codeblocks.html]


2. Общие сведения об алгоритмизации

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

Блок-схема – это способ представления алгоритма в виде наглядной графической схемы. Для визуального пояснения тех или иных шагов для ячеек блок-схемы используется специальная форма. Описать блок-схемой можно не каждый алгоритм, но этот метод подходит для многих задач.

Правила выполнения регламентируются ГОСТ 19.701-90 «Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения». Стандарт в частности регулирует способы построения схем и внешний вид их элементов. [3. http://www.infosait.ru/norma_doc/7/7707/index.htm]

К часто используемым элементам блок-схем можно отнести:

Рис.4. «Часто используемые элементы блок-схем».
Пример написания блок-схемы:
Задача: Дана последовательность из n целых чисел. Найти кол-во элементов этой последовательности кратных K.
Листинг программного кода:

#include
using namespace std;
int main()

{

int n,a,k,s,d=0;

cout « "how many numbers" « endl;

cin»n;

cout«" int K"«endl;

cin»k;

while (n>0){

cin»a;

if(a%k==0){

d=d+1;

}

n--;

}

cout«"result"«d;

return 0;

}

Блок схема:

c:\users\максим\appdata\local\microsoft\windows\inetcache\content.word\без имени 12345555.bmp

Пример блока схемы на примере (рис.5)

  1. Синтаксис языка С++

Используемый синтаксис при написании программ:

Объявление переменных

/*тип данных*/ /*идентификатор*/;

int variable = 384;

#include >

основная библиотека C++, позволяющая использовать ввод-вывод.

#include >

библиотека C++, с помощью которой в программе осуществляются математические вычисления.

setlocale(LC_ALL, "russian")

позволяет использовать кириллицу для ввода-вывода.

srand(time(NULL))

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

using namespace std

нужен для того, чтобы не вводит в начале каждой строки значение “std”.

Комментарии

// комментарий

/* начало и конец комментария */

Ввод, вывод

cin<
cout>>a;

Циклы

for(/*инициализация переменной*/; /*условие продолжения цикла*/; /*изменение переменной*/)

{

//код...

}

while(/*условие цикла*/)

{

//код...

}

do

{

//код...

}while(/*условие*/);

Функции

returnDataType functionName( dataType argName1, dataType argName2, ..., dataType argNameN);

returnDataType — возвращаемый тип данных

functionName — имя функции

dataType — тип данных

argName1...N — имена параметров функции (количество параметров неограниченно)

Значение истины и лжи

bool var = true; // в переменной var содержится истина

0; false; // ложь

Массив

dataType name[size];

int array[10];

Операторы

name = value or name; // присвоение

name1 == name2; // равенство

bollValue1 || bollValue2; // логическое или

bollValue1 && bollValue2; //логическое и

!boolValue; //логическое не

Типы данных

Bool - целочисленный (логический) тип данных

Char - целочисленный (символьный) тип данных

Int - целочисленный тип данных

Таблица 1. «Синтаксис С++»

4. Вычислительные задачи.

4.1. Задача 7.25

Условие: Известны оценки по информатике каждого ученика класса. Определить количество пятерок..

Алгоритм:

c:\users\максим\appdata\local\microsoft\windows\inetcache\content.word\без имени 12.bmp
Рис.6. «Алгоритм определения средней оценки».


Листинг программного кода:

#include
using namespace std;
int main()

{

int n, a, d=0;

setlocale (LC_ALL, "Russian");

cout<<"Введите кол-во учеников: "<
cin>>n;

while (n>0)

{

cin>>a;

if (a>4)

{

d++;

}

if (a<5)

{

d+0;

}

n--;

}

cout<<"Количество пятёрок: "<
return 0;

}


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



Рис.7. «Результат работы программного решения».
4.2. Задача 9.21.

Условие: Дано слово. Получить его часть, образованную второй, третьей и четвертой буквами

Листинг программного кода:

#include

#include //библиотека символов

using namespace std;

int main()

{

string str; //эта команда позволяет вводить буквы

cout << "Enter word: ";

getline(cin, str); // функция getline будет читать всю строку, включая пробелы

cout << "2 letter: "<
cout << "3 letter: "<
cout << "4 letter: "<
return 0;

}
Результат работы программного решения (рис.8):


Рисунок.8
Рис.9. «Алгоритм словопреобразования»:
c:\users\максим\appdata\local\microsoft\windows\inetcache\content.word\без имени 123.bmp

Рис.9

4.3. Задача 4.60

Условие: Дано четырехзначное число. Определить:

а) входят ли в него цифры 2 или 7;

б) входят ли в него цифры 3, 6 или 9..

Листинг программного кода:

#include

#include

using namespace std;

int main()

{

setlocale (LC_ALL, "Russian")

string str; //эта команда позволяет вводить символы и считать порядковый номер символа

cout << "Введите четырёхзначное число: ";

cin >> str;

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

if(str[i] =='2' ) {

cout <<"Есть цифра 2"<
}}
for(int i=0;i<4;i++){

if(str[i] =='7' ) {

cout <<"Есть цифра 7"<
}}
for(int i=0;i<4;i++){

if(str[i] =='3' ) {

cout <<"Есть цифра 3"<
}}

Алгоритм (рис.10) :
c:\users\максим\appdata\local\microsoft\windows\inetcache\content.word\1234.bmp

Рис.10. «Алгоритм расчета оценки спортсмена».

Листинг программного кода:

#include

#include

using namespace std;

int main()

{

setlocale (LC_ALL, "Russian");
string str; //эта команда позволяет вводить символы и считать порядковый номер символа
cout << "Введите четырёхзначное число: ";
cin >> str;
for(int i=0;i<4;i++){

if(str[i] =='2' ) {

cout <<"Есть цифра 2"<
}}
for(int i=0;i<4;i++){

if(str[i] =='7' ) {

cout <<"Есть цифра 7"<
}}
for(int i=0;i<4;i++){

if(str[i] =='3' ) {

cout <<"Есть цифра 3"<
}}
for(int i=0;i<4;i++){

if(str[i] =='6' ) {

cout <<"Есть цифра 6"<
}}
for(int i=0;i<4;i++){

if(str[i] =='9' ) {

cout <<"Есть цифра 9"<
}}

return 0;

}

Итог работы программы:



Рис.11. «Выполнение программы для определения наличия цифры в числе»

4.3. Задача 11.15

Условие: Дано четырехзначное число. Определить:

а) входят ли в него цифры 2 или 7;

б) входят ли в него цифры 3, 6 или 9..

Алгоритм (рисунок 12):

c:\users\максим\appdata\local\microsoft\windows\inetcache\content.word\без имени 1235.bmp

Рисунок 12

Листинг программного кода:

#include

#include

using namespace std;

int main()

{

int Array[10]; //Создаем массив

cout<<"Enter 10 number: ";

int n,x;

for (int i = 0; i < 10; i++) //Цикл заполнения

{ cin >> Array[i]; }

cout<< "The arithmetic mean of the numbers: " <
cin >> n >> x;//Вводим номер элемента

cout<
cout <<"Result: "<<((Array[n]-1) + (Array[x]-1))/2 << endl; //Средне арифметическое

cout<< "Square: " <
cin >> n;//Вводим номер элемента

; //Возведение в квадрат

return 0;

}

  1. Информационное обеспечение

Для данных программ подойдёт следующее аппаратное средство –

Acer – Aspire E5-551G со следующими конфигурациями:

Процессор – AMD A10-7300 Radeon R6, 1.90GHz;

Установленная память (ОЗУ) – 4,00ГБ.

Для того чтобы привести в работу приложения необходимо пересобрать решение программы, а далее запустить отладчик Windows. Ввести требуемые переменные и нажать кнопку ввода.

Заключение

В ходе выполнения курсовой работы я научился работать в таких программах как : CodeBlock::, MS Word 2010. Получил навыки и изучил язык программирования C++ . Основные приобретенные знания: объявление переменных (напр.int), работа с циклами (напр.for), условиями (напр.if). Познакомилась с принципами подключения библиотек (наприм. ввода\вывода). Выяснила, что для остановки программы перед закрытием необходимо воспользоваться system(“pause”), он ожидает пустой ввод с клавиатуры.
Список литературы:

1.Бьерн Страуструп. Язык программирования С++.

2. https://progtips.ru/instrumenty-programmista/codeblocks.html

3. http://www.infosait.ru/norma_doc/7/7707/index.htm

4. Глушаков, Коваль, Смирнов. Язык программирования С++, учебный курс. 2001

5. Шилдт Г. Самоучитель C++. БХВ.2003

6. Крупник А. Самоучитель С++. Питер.2005

7. Литвиненко Н. А. Технология программирования на С++.

8. http://cppstudio.com

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ
РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ
ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ОБРАЗОВАНИЯ


«ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ
УНИВЕРСИТЕТ»

Факультет информационных технологий и компьютерной безопасности

Кафедра компьютерных интеллектуальных технологий проектирования

КУРСОВОЙ ПРОЕКТ

По дисциплине: Программирование на языках высокого уровня

Наименование


на тему: Решение вычислительных задач.

Разработал М.Р.Алейников

подпись, дата инициалы, фамилия

Проверил А.Н.Юров

подпись, дата инициалы, фамилия

Воронеж 2018

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ
РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ
ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ОБРАЗОВАНИЯ


«ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ
УНИВЕРСИТЕТ»

Факультет информационных технологий и компьютерной безопасности

Кафедра компьютерных интеллектуальный технологий проектирования

ЗАДАНИЕ
На курсовой проект по предмету
«Среды объектно-ориентированного программирования»



Тема работы «Разработка формата данных для хранения информации, с реализацией на CodeBlock::»


Студент Алейников Максим Романович группа АМ-11

Фамилия, имя, отчество номер группы

Технические условия: среда программирования – CodeBlock::, язык проектирования C++, ЭВМ, удовлетворяющая по характеристикам требованиям
программного обеспечения


Руководитель А.Н. Юров

Подпись, дата Инициалы, фамилия

Задание принял студентМ.Р.Алейников_________

Подпись, дата Инициалы, фамилия




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