объектно ориентированное программирование / лабы / lab2
.docxУчреждение «Университет Туран»
Факультет АКТ
Кафедра компьютерная и программная инженерия
Отчёт по лабораторной работе №2
по дисциплине «ООП»
Выполнил
ст. гр. ВТПО-12-1у
Цой А. С.
Проверила
Койшыбаева Ж.Б.
Алматы, 2013
1 ПОСТАНОВКА ЗАДАЧИ
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
1) номер минимального по модулю элемента массива
2) сумму модулей элементов массива, расположенных после первого отрицательного элемента.
Сжать массив, удалив из него все элементы, величина которых находится а интервале [a,b]. Освободившиеся в конце массива элементы заполнить нулями.
2 АНАЛИЗ ПОСТАНОВКИ ЗАДАЧИ
Поскольку не сказано, нужно ли сортировать элементы после преобразования массива, они никак не сортируются.
3 ФОРМАЛЬНАЯ ПОСТАНОВКА ЗАДАЧИ
Дано 6 элементов массива.
Требуется найти индекс минимального элемента и подсчитать сумму модулей элементов массива, находящихся после.
После выше описанных операций задаем интервал и сжимаем массив, заменяя элементы не входящие в интервал, «0».
4 ИСКЛЮЧИТЕЛЬНЫЕ СИТУАЦИИ
Некорректный ввод исходных данных. Данные вводятся формата «int», т.е. вводиться могут только цифры. Наличие пробелов между цифрами обязательно.
5 РЕЗУЛЬТАТЫ
5.1 Листинг программы
#include "stdafx.h"
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <math.h>
#define N 6
int _tmain(int argc, _TCHAR* argv[])
{int a[N], b, y,x;
printf (" Vvedite v odnoi stroke elementi massiva, \n");
printf (" % i celih chisel, i najmite <Enter> \n" ,N);
printf ("->");
for ( int i=0;i<N;i++)
scanf( "%i",&a[i]);
b = 2147483647;
int c,sum=0;
for (int i=0;i<N;i++)
{
if (abs(a[i])<b)
{
b=abs(a[i]);
c=i;
}
}
for (int i=0;i<N;i++)
{
if (a[i]<0)
{ for (int j=i+1;j<N;j++)
sum=sum+abs(a[j]);
i=N;
}
}
printf("nomer min chisla %i \n", c+1);
printf ("Vvedite interval \n");
scanf( "%i", &x);
scanf( "%i",&y);
for (int i=0;i<N;i++)
{
if ((a[i]<x)||(a[i]>y))
a[i]=0;
}
printf("summa posle otricat %i \n", sum);
for (int i=0;i<N;i++)
printf("%i ", a[i]);
printf ("\n");
getch();
return 0;
5.2 Контрольный пример