Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лабораторная работа №4 Вариант 21

.doc
Скачиваний:
8
Добавлен:
20.06.2014
Размер:
246.27 Кб
Скачать

2

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

ЛИПЕЦКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

КАФЕДРА АВТОМАТИЗИРОВАННЫХ СИСТЕМ УПРАВЛЕНИЯ

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

по дисциплине

«Технология программирования»

на тему:

«Программирование алгоритмов генерации псевдослучайных чисел»

Студент

подпись, дата

фамилия, инициалы

Группа

Принял

Домашнев П.А.

ученая степень, звание

подпись, дата

фамилия, инициалы

Липецк 2010

  1. Задание

Задание

Написать программу, осуществляющую генерацию определенного количества псевдослучайных чисел из заданного пользователем интервала заданным методом и вывод их на экран. Количество чисел и интервал вводит пользователь. Программа должна также записывать сгенерированную псевдослучайную последовательность в файл. Формат файла – двоичный.

Вариант 21

Алгоритм поиска

метод середин квадратов

  1. Листинг программы

#include <stdio.h>

#include <math.h>

int func(int x,int k)

{

int y=(int)(pow(x,2.0)/(pow(10.0,(k/2))))%((int)pow(10.0,k));

return y;

}

void main()

{

int i,n,y,k=0,x;

FILE *fp=fopen("I:/1234","ab+");

printf("Input first element and how much: ");

scanf("%d %d",&x,&n);

y=x;

for(k=0;y>=1;k++)

y=y/10;

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

{

x=func(x,k);

fwrite(&x,sizeof(int),1,fp);

printf("%d\n",x);

}

fclose(fp);

}

  1. Контрольный пример

4.Блок-схема

5. Вывод

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

6.Список использованной литературы

  1. Шилдт Г. Искусство программирования на C++. БХВ.2005

  2. Шилдт Г. C++ Руководство для начинающих. Вильямс.2005

  3. Страуструп Б. Язык программирования С++. Специальное издание, 3-изд. Бином.2004