Изучение языка программирования С++. Описание основных алгоритмов и синтаксиса языка C++, страница 13


3.6 Задание 6.  Работа с одномерными массивами

Имеется предопределенный одномерный массив из 27 элементов:

3, -1, 4, -1, 5, -9, 2, -6, 5,

-3, 5, -8, 9, -7, 9, -3, 0, -3,

8, -4, 0, -2, 6, -4, 3, -3, 8

Предварительно заданные значения для отдельных переменных из задания:

Переменная

Значение

[A, B]

[-3, 3]

D

-2

G

5

N

10

Дано выражение   (U+T) (S+2), где

S – сумма N последних элементов;

T – максимальный отрицательный элемент;

U – среднее квадратичное элементов с четными номерами.

Программный код:

//Задание 6. Обработка одномерных массивов

//Программа вычисляет среднее квадратичное элементов с четными номерами,

//сумму N последних элементов, находит максимальный отрицательный элемент;

//Автор: Федькив Александр, группа 629зб;

#include <iostream>

#include <string>

int main()

{

double S = 0;//S – сумма N последних элементов;

double T = 0;//T – максимальный отрицательный элемент;

double U = 0;//U – среднее квадратичное элементов с четными номерами;

int N = 10;//N - заданное значение переменной;

int p = 0;//p - счетчик элементов с четными номерами;

int k = 0;//k - номер последнего отрицательного элемента;

double result;//result- итоговое значение;

// Предопределенный для всех вариантов одномерный массив;

int array[27] = { 3, -1, 4, -1, 5, -9, 2, -6, 5,

-3, 5, -8, 9, -7, 9, -3, 0, -3,

8, -4, 6, -2, 6, -4, 3, -3, 8};

for ( int i = 2; i <= 26; i+=2)

{   // Цикл по всему массиву для элементов с четными номерами;

// Сумма квадратов элементов с четными номерами;

U = U + array[i]*array[i];

p = p+1;

}

U = sqrt((U/(double)p));

for (int i = 0; i < 27; i++)

{   // Цикл по всему массиву

// Суммирование N последних элементов

if (i >= 27-N)

S = S + array[i];

}

for (int i = 0; i < 27; i++)  

{   // Цикл по всему массиву

// Нахождение номера последнего отрицательного элемента

if (array[i]< 0 )

k=i;

}

T = array[k];

for (int i = 0; i < 27; i++)

{

if (array[i]< 0 && array[i] > T)

T = array[i];

}

//Вычисляем итоговое выражение;

result = (U+T)*(S+2);

//Выводим результаты вычисления

printf("O my Lord, its result for you!\n");

printf("\np=%d;\n", p);

printf("U=%f;\n", U);

printf("S=%f;\n", S);

printf("k=%d;\n", k);

printf("T=%f;\n", T);

printf("\nresult=%f;\n", result);

getchar ();

return 0;

}

Скриншот работы программы:

Заключение

Я выполнил курсовую работу, посвященную изучению языка программирования С++. В ходе работы я описал историю развития языков программирования, провел сравнение современных языков и сред программирования. Мной были описаны основные алгоритмы и синтаксис языка С++, дано описание операторов ввода и вывода , операторов для выполнения арифметических  действий ( выполнено практическое задание по вычислению значений выражения); рассмотрены условные операторы. На практике рассмотрено применение операторов цикла при операциях с массивами.

В ходе работы я получил теоретические знания по программированию на языке С++ и закрепил эти знания, выполнив ряд практических заданий в среде Visual Studio 2012 Express.


Список использованных источников

1.Волкова И.А., Головин И.Г., Карпов Л.Е. Системы программирования: Учебное пособие /И.А.Волкова, И.Г.Головин, Л.Е.Карпов.  - М.: Издательский отдел факультета ВМК МГУ, 2009. - 129 с.

2. Иванникова, А.Б. Курсовое проектирование: методические указания по курсовому проектированию/А.Б. Иванникова.-СПбГТИ (ТУ), 2013.-29 с.;

3. Литвиненко Н. А Технология программирования на С++ :Учебное пособие /Н.А.Литвиненко.- СПб.:БХВ, 2010.-281 с.

4. Страуструп Бьерн  - Язык программирования C++. Специальное издание /Бьерн Страуструп.-М.: Бином, 2011.-1136 с.