Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка_информатика4.doc
Скачиваний:
61
Добавлен:
07.02.2015
Размер:
13.31 Mб
Скачать

Задание

  1. Запустите C++Builder.

  2. Составьте программу в соответствии с вашим вариантом задания, вычисляющую многократно значение функции при изменении аргумента в указанном диапазоне и с заданным шагом (см. таблицу вариантов задания). Вычисления проводить в отдельной функции. Организовать вывод значения аргумента и вычисленного значения функции в виде таблицы:

x

y(x)

  1. Выполнить компиляцию программы. При наличии ошибок внести исправления.

  2. Сдайте отчет преподавателю.

Варианты

Функция

Диапазон изменения аргумента и шаг (h)

Продолжение табл.

Функция

Диапазон изменения аргумента и шаг (h)

Продолжение табл.

Функция

Диапазон изменения аргумента и шаг (h)

Продолжение табл.

Функция

Диапазон изменения аргумента и шаг (h)

Лабораторная работа 5 Одномерные массивы

Цель работы – познакомиться с одномерными массивами, приобрести навыки написания программ на языке C++ с использованием одномерных массивов.

Теория

Массив – это структура однотипных данных, занимающих непрерывную область памяти. Массив имеет размер – количество элементов в нем. Определение одномерного массива:

type имя_массива [константное_выражение];

Здесь имя_массива – идентификатор; константное_выражение – количество элементов в массиве; type – произвольный тип данных языка C++, который будут иметь элементы массива, например, int, double и т.д. В некоторых случаях допустимо описание массива без указания количества его элементов, т.е. без константного выражения в квадратных скобках.

Каждый элемент массива имеет свой номер (также называемый индексом), обращение к элементу массива осуществляется путем указания его индекса. В языке C++ элементы нумеруются, начиная с 0, поэтому последний элемент массива имеет номер на 1 меньше размера массива.

Пример

//Здесь создаются 4 элемента массива – a[0], a[1], a[2], a[3].

float a[4];

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

Пример

void f (void)

{

static float F[4]; //Внутренний статический массив

long double A[10] ; //Массив автоматической памяти

}

void main ()

{

extern int D[]; //Описание массива

f ();

}

int D[8]; //Внешний массив (определение)

Массивы D[8], F[4] инициализированы нулевыми значениями.

Явная инициализация элементов массива разрешена только при его определении и возможна двумя способами: либо с указанием размера массива в квадратных скобках, либо без явного указания (без конкретного выражения) в квадратных скобках.

Пример

char СН[] = { 'А', 'В', 'С', 'D'}; //Массив из 4 элементов

int IN[6] = { 10, 20, 30, 40 }; //Массив из 6 элементов

char STR[] == "ABCD", //Массив и» 5 элементов

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

Пример

/*программа, которая создает массив типа int[], заданного размера, считывает с клавиатуры его элементы, затем прибавляет к каждому элементу массива число 1, затем выводит результат на экран*/

#include <iostream.h>

int main()

{

const int n=20; //Размер массива

int i; //Счетчик в циклах

int arr[n]; //Объявление массива

//Считываем массив

cout<<"Введите "<<n<<" целых чисел: ";

for(i=0;i<n; ++i)

cin>>arr[i];

//Прибавляем по 1 к каждому элементу

for(i=0;i<n;++i)

arr[i]+=1;

//Выводим массив на экран

for(i=0;i<n;++i)

cout<<arr[i]<<" ";

cout<<endl;

return 0;

}

При написании программ часто возникает потребность в присвоении переменной случайного значения или в заполнении массива случайными числами. Для этого используется генератор случайных значений rand ()%n, который генерирует псевдослучайные числа в диапазоне от 0 до n-1. Для того чтобы генератор работал, необходимо подключить библиотеки <stdlib.h> и <stdio.h>, а до использования генератора написать функцию randomize(), которая инициализирует генератор.

Пример

/*программа, которая выводит на экран 10 чисел, сгенерированных случайным образом*/

#include <stdlib.h>

#include <stdio.h>

int main(void)

{

int i;

randomize();

printf("Ten random numbers from 0 to 99\n\n");

for(i=0; i<10; i++)

printf("%d\n", rand() % 100);

return 0;

}

/*программа, которая заполняет массив с помощью генератора случайным чисел*/

#include <stdlib.h>

#include <stdio.h>

int main(void)

{

int i;

randomize();

const int n=20;

int arr[n];

for(i=0;i<n; ++i)

arr[i]= rand() % 100;

return 0;

}