Мегаобучалка Главная | О нас | Обратная связь


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



2018-07-06 391 Обсуждений (0)
Лабораторная работа №3 0.00 из 5.00 0 оценок




Операторы языка С++. Библиотечные функций языка С++

1. Цель работы: Получение навыков работы с операторами языка С++. Изучение одного из алгоритмов сортировки данных – пузырьковая сортировка.

 

Домашнее задание

2.1 Изучить операторы языка С++ и их изображение на блок схеме [2].

2.2 Нарисовать блок схему алгоритма программ №1

2.3 Нарисуйте блок схему алгоритма, реализующего пузырьковую сортировку.

 

Лабораторное задание

3.1 Набрать и отладить программу №1, которая вычисляет площадь фигуры, изображённой на рис. 1

Рис. 1 Исследуемая фигура

//Программа №1

#include "stdafx.h"

#include <iostream>

using namespace std;

 

void main (){

int N;

cout<<"\n Input N = ";

cin>>N;

double a = 1, b = 6 ;

double h = (b-a)/N, t = a, S1 = 0,S2 = 0, y=0;

//Находим площадь фигуры методом прямоугольников

for(int i = 0; i < N; i++, t+=h){

if(t>=a && t<=3) {y = 1.5*t-1.5; S1 += h*y; }

if(t>=3 && t<=b) y = -1*t+6, S1 += h*y;

}

double y_last = 0;

t = a, y=0;

// Находим площадь фигуры методом трапеций

for(int i = 0; i < N+1; i++, t+=h){

if(t>=a && t<=3) y = 1.5*t-1.5, S2 += h*(y+y_last)/2;

if(t>3 && t<=b) y = -1*t+6, S2 += h*(y+y_last)/2;

y_last = y;

}

cout<<"\n S1= "<<S1;

cout<<"\n S2= "<<S2;

getchar();

getchar();

}

 

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

3.3 Набрать и отладить программу №2

 

//Программа №2 (пузырьковая сортировка)

#include "stdafx.h"

#include <iostream>

#include <stdio.h>

#include <stdlib.h>

#include <iostream>

using namespace std;

 

const int size = 100;

float fData[size];

void BubbleSort(float fArrayToSort[],int iNumberOfElements);

void main()

{

srand(1); // Инициализация генератора случайных чисел

int index;

// Заполняем исходный массив набором случайных чисел

for (index = 0; index < size; ++index)

fData[index] = rand() % 100;

BubbleSort(fData, size);

for (index = 0; index < size; index++)

cout<<"\n fData["<<index<< "] = "<<fData[index];

printf("\n");

getchar();

}

//

//-------------------------------------------------

void BubbleSort(float fArrayToSort[],float iNumberOfElements)//синтаксическая ошибка

{

int i,j;

float fTemp;

for ( i = 0; 1 < iNumberOfElements - 1; i++) // Логическая ошибка

for (j = iNumberOfElements - 1; j > i; j--){

if (fArrayToSort[j] < fArrayToSort[j-1]){

// Меняем местами fArrayToSort[j] и fArrayToSort[j-1];

fTemp = fArrayToSort[j];

fArrayToSort[j] = fArrayToSort[j-1];

fArrayToSort[j-1] = fTemp;

}

}

}

 

 

3.4 Используя Help, выписать описание всех стандартных функций, используемых в программах №1 и №2.

3.5 Найти и исправить в программе две ошибки. Модифицируйте программу №2 так, чтобы она находила и выводила на экран минимальное, максимальное и среднеарифметическое значение массива сортируемых чисел.

3.6 Написать отчет.

 

Содержание отчета

4.1 Титульный лист. Домашнее задание.

4.2 Текст модифицированной программы №1 и №2.

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

 

5. Контрольные вопросы

5.1 Напишите программу, вычисляющую такое значение n, при котором значение предела вычислялось бы с точностью до 3 знака после запятой.

5.2 Напишите программу сортирующую в алфавитном порядке десять произвольных букв, введенных с клавиатуры.

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

5.4 Напишите программу, вычисляющую факториал числа.

5.5 Напишите программу вычисляющую корни квадратного уравнения a0x2+a1x+a2=0 (коэффициенты a0, a1, a2 задаются пользователем с клавиатуры).

5.6 Напишите программу вычисляющую значение функции y(x) = a0x2+a1x+a2 (коэффициенты a0, a1, a2 задаются пользователем с клавиатуры).

5.7 Напишите программу вычисляющую значение функции f(t) = 4psin(2pt)+ 4p/3sin(6pt) +4p/5sin(10pt).

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

5.9 Объясните, что такое пустой и составной операторы. Приведите примеры.

5.10Поясните как работают операторы цикла. Приведите примеры.

5.11Поясните как работают условные операторы. Приведите примеры.

5.12Какие операторы передачи управления вы знаете. Приведите примеры.

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

 

 



2018-07-06 391 Обсуждений (0)
Лабораторная работа №3 0.00 из 5.00 0 оценок









Обсуждение в статье: Лабораторная работа №3

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Модели организации как закрытой, открытой, частично открытой системы: Закрытая система имеет жесткие фиксированные границы, ее действия относительно независимы...
Как вы ведете себя при стрессе?: Вы можете самостоятельно управлять стрессом! Каждый из нас имеет право и возможность уменьшить его воздействие на нас...
Генезис конфликтологии как науки в древней Греции: Для уяснения предыстории конфликтологии существенное значение имеет обращение к античной...
Почему люди поддаются рекламе?: Только не надо искать ответы в качестве или количестве рекламы...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (391)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.007 сек.)