Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МУ_СРСП_Программирование РЭС.doc
Скачиваний:
3
Добавлен:
01.04.2025
Размер:
3 Мб
Скачать
☆

5.6 Вычисление конечных сумм и произведений

Другим наглядным примером цикла с известным числом повторений (циклом с параметром) о вычислении сумм и произведений.

Пример 5.4 Вычисление суммы

Напишем программу вычисления суммы

где х изменяется с шагом 1.

Реализация в С++:

#include "stdafx.h"

#include <stdio.h>

#include <conio.h>

using namespace System;

int main(array<System::String ^> ^args)

{

float x,s;

int i;

printf("x="),scanf("%f",&x);

s=0;

for (i=1; i<=10; i++) s=s+(x+i);

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

getch();

return 0;

}

Задание 5.4

Выполните программу примера 5.4 и на ее основе напишите программу вычисления суммы:

Пример 5.5 Вычисление произведения

Напишем программу вычисления произведения

#include "stdafx.h"

#include <stdio.h>

#include<conio.h>

using namespace System;

int main(array<System::String ^> ^args)

{

float x,p;

int i;

printf("x="),scanf("%f",&x);

p=1;

for (i=1; i<=10; i++) p=p*(x+i);

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

getch();

return 0;

}

Задание 5.5

Выполните программу примера 5.4 и на ее основе напишите программы вычисления факториала числа (факториал числа n – это произведение n!=1*2*…*n)и произведения p=2*4*8*…*(2n).

5.7 Управляющие конструкции break, continue, return, goto

Для выхода из цикла можно использовать оператор break.

Если выполнение очередного шага цикла требуется завершить до того, как будет достигнут конец тела цик­ла, то можно использовать оператор continue. Оператор continue, как и оператор break, используется только внутри операторов цикла, но в отличие от него выполнение программы продолжается не с оператора, следующего за прерванным оператором, а с начала прерванного оператора.

Формат оператора:

continue;

Оператор return завершает выполнение функции, в которой он задан, и возвращает управление в вызывающую функцию, в точку, непосредственно следующую за вызовом.

Формат оператора:

return [(выражение)];

Использование оператора безусловного перехода goto в практике программирования на языке С/C++ настоятельно не рекомендуется, так как он затрудняет понимание программ и возможность их модификаций.

Формат оператора:

goto имя-метки;

Оператор goto передает управление на оператор, помеченный меткой имя-метки (имя-метки – это идентификатор).

Вопросы для самоконтроля:

    1. В чем преимущества использования операторов цикла в программах?

    2. Какие виды циклов существуют?

    3. Какова общая структура цикла с параметром?

    4. Каким образом оформить тело цикла с параметром для нескольких операторов?

    5. Какие значения может принимать шаг изменения параметра цикла в операторе for?

    6. В чем отличие алгоритма вычисления суммы от алгоритма вычисления произведения?

6 Массивы

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

6.1 Понятие и описание массивов

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

Массив — именованный набор с фиксированным количеством однотипных данных (double, float, int и т.п.).

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

В массивы объединены результаты экспериментов, списки фамилий и т.п.

Объявление массива имеет формат:

Тип имя_массива [количество_элементов];

Тип задает тип элементов объявляемого массива.

Каждые квадратные скобки определяют число элементов по данному измерению массива (одномерный, двумерный, …).

Количество_элементов определяет число элементов в массиве и может быть опущено если при объявлении массив инициализируется:

int a[]={0,1,2,3,4,5};

Индекс (номер) – числа, определяющие место элемента в массива.

Пример 6.1 Объявление одномерного массива

Объявление одномерного целочисленного массива может иметь вид:

int a[20];

Объявляется, что a – массив, состоящий из двадцати членов, или элементов.

Первый элемент массива a с индексом 0 называется a[0];

второй с индексом 1– a[1] и т.д. до a[19].

Задание 6.1

Объявите вещественный одномерный массив b, состоящий из 10 элементов.

Примечание: В современных языках программирования (PHP, C++, C#) нумерацию элементов массива принято начинать с нуля. Однако, программы с нумерацией элементов массива с единицы, также работоспособны. По этому поводу автор многочисленных книг по Unix Стен Келли-Бутл шутил: «Элементы массива должны нумероваться с 0 или с 1? Моё компромиссное предложение начинать нумерацию с 0.5 было отвергнуто без, как мне кажется, должного внимания».

Пример 6.2. Объявление двумерного массива

Объявление двумерного целочисленного массива, содержащего 2 строки и 3 столбца имеет вид:

int a[2][3];

a[0][0]

a[0][1]

a[0][2]

a[1][0]

a[1][1]

a[1][2]

Задание 6.2

Объявите квадратную матрицу b, состоящую из 25 вещественных элементов.