Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Microsoft_Visual_C++..doc
Скачиваний:
18
Добавлен:
29.10.2018
Размер:
691.2 Кб
Скачать

Пример 2 Табулирование непрерывной функции

Протабулируем функцию y(x)=x2 на отрезке [х0; хn] с шагом h с использованием операторов for, while, do while.

Таблица 4 – Табулирование функции

for

while

do while

Таблица 5 – Сравнение операторов цикла при табулировании функции

for

while

do while

for(x=x0;x<=xn;x+=h)

{

y=x*x;

printf("%f %f\n",x,y);

}

x=x0;

while (x<=xn)

{

y=x*x;

printf("%f %f\n",x,y);

x+=h;

}

x=x0;

do

{

y=x*x;

printf("%f %f\n",x,y);

x+=h;

}

while (x<=xn);

Тестирование: при х0=0, хn=10, h=2 получаем

Первый столбец содержит значения переменной x, второй столбец – значения функции y(x)=x2.

Задание 2

На основе примера 2 составьте программу табулирования функции y(x)=x3 на отрезке [х0; хn] с шагом h.

Пример 3 Табулирование сложной функции

Напишем программу табулирования сложной функции

График функции приведен на рисунке 1

Рисунок 1

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

#include "stdafx.h"

#include<stdio.h>

#include<conio.h>

using namespace System;

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

{

float x0,xn,h,x,y;

printf("xo="); scanf("%f",&x0);

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

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

for(x=x0;x<=xn;x+=h)

{

if (x<=0) y=0;

else

if (x>0 & x<1) y=x;

else y=1;

printf("%f %f\n",x,y);

}

getch();

return 0;

}

Тестирование:

Задание 3

Выполните программу примера 3 и на ее основе составьте программу табулирования функции:

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

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

Пример 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;

}

Тестирование:

Задание 4

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

Пример 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

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

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

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

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

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

continue;

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

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

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

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

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

goto имя-метки;

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

Задачи

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

2 Начав тренировку спортсмен в первый день пробежал 10км. Каждый день он увеличивал дневную норму на 10% нормы предыдущего дня. Какой суммарный путь пробежит спортсмен за 7 дней.

3 Составить алгоритм решения задачи: сколько можно купить ручек, карандашей и ластиков, платя за ручку 10р., за карандаш – 5р., а за ластик – 0,5р., если на 100р. надо купить 100 предметов.

Лабораторная работа № 4

Массивы и указатели

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]