Краткие сведения по информатике

Для получения и распределения событий требуется менеджер событий, который уже есть в некоторых языках программирования (например, JAVA) или системах разработки (Delphi), в иных напротив, его требуется написать самостоятельно. Работа с событиями близка идеям объектно-ориентированного программирования, и сейчас практически везде, где требуется обработка событий, используются объекты.

В настоя

щий момент подавляющее большинство пользовательских программ пишется именно с применением событийного объектно-ориентированного программирования. В качестве примера достаточно рассмотреть систему программирования Delphi, где всё несобытийное программирование скрыто от программиста. Тем не менее, сейчас событийное программирование изучается неоправданно поздно. Обычно сложность состоит не в принятии нового стиля программирования, а в переучивании и ломке устоявшихся стереотипов.

199. Программирование структурное – методология и технология разработки программных комплексов, основанная на принципах:

- программирования "сверху-вниз";

- модульного программирования.

При этом логика алгоритма и программы должны использовать три основные структуры: последовательное выполнение, ветвление и повторение.

200. Программное обеспечение (software) – совокупность программ и программных комплексов для обеспечения работы компьютера и вычислительных сетей. По видам выполняемых функций программное обеспечение подразделяется на:

1. Системное программное обеспечение (System software): - создание операционной среды функционирования других программ; - обеспечение надежной и эффективной работы самого компьютера и вычислительной сети;

- диагностика и профилактика аппаратуры компьютера и вычислительных сетей; - выполнение вспомогательных технологических процессов: копирование, архивация, восстановление файлов и т.д.

2. Прикладное программное обеспечение (Application software) - программное обеспечение, состоящее из:

- отдельных прикладных программ и пакетов прикладных программ, предназначенных для решения различных задач пользователей; - автоматизированных систем, созданных на основе этих (пакетов) прикладных программ.

3. Инструментальное программное обеспечение (Software tools) - программное обеспечение, используемое в ходе разработки, корректировки или развития других программ: редакторы, компиляторы, отладчики, вспомогательные системные программы, графические пакеты и др.

Задача

Задача № 40: Дан массив чисел P=(p1,p2, .,pm). Вычислить среднее арифметическое отрицательных элементов массива.

Решение задачи

1) Обозначения:

Count – количество элементов в массиве,

i – текущий номер элемента массива,

arr[i] – элемент массива с номером i,

otrCount – количество отрицательных элементов,

otrSumm – сумма отрицательных элементов.

Массив – это упорядоченная совокупность однотипных элементов.

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

Отрицательные элементы определяются с помощью проверки условия arr[i] < 0. Если для элемента это условие не выполняется, то осуществляется выбор для обработки следующего элемента массива, то есть значение i увеличивается на 1. При обнаружении отрицательного элемента он добавляется к сумме и otrCount увеличивается на 1, затем происходит переход к следующему элементу массива.

Цикл обработки элементов массива заканчивается, когда проверены все элементы массива, начиная с первого и заканчивая элементом с номером Count.

После обработки, если otrCount < 0, выводится среднеарифметическое отрицательных элементов (otrSumm/otrCount), в противном случае выводится сообщение, о том, что отрицательных элементов в массиве нет.

3) Программа на языке Turbo Pascal:

(* Podkluchaem modul crt dlia funkzii clrscr, kotoraya chistit ekran *)

uses crt;

const

MAX_LENGTH = 1000; (* maksimalnaya dlinna massiva *)

var

count: integer; (* kollichestvo elementov v massive *)

arr: array [1 MAX_LENGTH] of integer; (* massiv *)

otrSumm: integer; (* summa otrizatelnih elementov *)

otrCount: integer; (* kolichestvo otrizatelnih elementov *)

i: integer; (* schetchick dlya сiklov *)

begin

clrscr;

(* Vvodim kollichestvo elementov v massive *)

write(‘Input array length: ‘);

readln(count);

if (count < 1) or (count > MAX_LENGTH) then

begin

write(‘Nevernoe kolichestvo elementov’);

exit;

end;

(* Vvodim posledovatelno elementi massiva *)

for I := 1 to count do

begin

write(‘Input a[‘, I, ‘]: ‘);

readln(arr[i]);

end;

(* Ishem otrizatelnie elementi, ih summu (otrSumm) I kolichestvo (otrCount) *)

otrCount := 0;

otrSumm := 0;

for I := 1 to count do

begin

if arr[i] < 0 then

begin

otrSumm := otrSumm + arr[i];

inc(otrCount);

end

end;

(* Vivodim rezultat (otrSumm/otrCount) ili soobshenie o tom, chto otrizatelnih elementov net. *)

if otrCount > 0 then

begin

(* Format vivoda drobnih chisel :2:2 – 2 simvola do tochki I dva posle *)

write(‘Srednee arifmeticheskoe otrizatelnih elementov = ‘, otrSumm / otrCount :2:2);

end

else

begin

write(‘V massive net otrizatelnih elementov’);

end;

(* Zhdem nazhatiya ENTER *)

readln;

end.

4) Пояснения к программе:

На запрос Input array length вводим с клавиатуры значение Count. Затем в цикле, повторяющемся Count раз, вводим по одному элементу массива на каждый запрос.

Count

Массив

otrSumm/otrCount

5

-5, 7, -15, 30, 0

(-5+(-15))2= -10.00

8

-3, -2, 1, -7, -8, 100, 0, 2

((-3)+(-2)+(-7)+(-8))= -5.00

7

-7, -9, -6, 1, -7, 4, 2

((-7)+(-9)+(-6)+1+(-7)+4+2)= -7.25

     

2

5, 0

V massive net otricatelnux elementov

Обнуляем otrSumm и otrCount. Далее в цикле проверяем условие arr[i] < 0. Если очередной элемент массива оказывается отрицательным, то добавляем его к сумме и увеличиваем количество отрицательных элементов.

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

10

-3, 5, -9, -1, 2, -4, 3, -6, 8, 4

((-3)+5+(-9)+(-1)+2+(-4)+3+(-6)+8+4)= -4.60

Страница:  1  2  3  4  5  6  7 


Другие рефераты на тему «Международные отношения и мировая экономика»:

Поиск рефератов

Последние рефераты раздела

Copyright © 2010-2024 - www.refsru.com - рефераты, курсовые и дипломные работы