Одномерные массивы. Организация ввода и вывода данных

Автор работы: Пользователь скрыл имя, 13 Ноября 2010 в 18:25, Не определен

Описание работы

решение задач с массивами

Файлы: 1 файл

Одномерные массив1.doc

— 238.50 Кб (Скачать файл)

Колледж Экономики и информационных технологий 
 
 
 
 
 
 
 
 
 

Отчет по учебной практике 

Дисциплина: Основы алгоритмизации. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Выполнила: Гавриляченко Н.

Группа  Г-121

                                                                              Проверила: Абилова Ж.М. 
 
 
 
 
 
 
 

Уральск, 2009 

Одномерные  массивы.

Организация ввода и вывода данных 

Вариант- 6.

Задание 1.

Организовать  ввод и вывод одномерного массива  А1..А10 из вещественных чисел с помощью  формулы А[i]:=cos(i +2i+1).

program p1;

var a:array [1..10] of integer;

i:integer;

begin

for i:=1 to 10 do a[i]:=cos(sqr(i)+2*i+1)

for i:=1 to 10 do

writeln ('a[',i,']=',a[i]);

 readln;

end. 
 

Задание 2.

Напишите программу, которая сначало вводит 15 чисел, складывает отдельно элементы с четными номерами и складывает отдельно нечетные элементы и выдает полученные результаты. 

Program p1;

Var a: array [1..15] of integer;

i,j,k,n:integer;

Begin

For i:=1 to 15 do

Read(a[i]);

For i:=1 to 15 do

Write(' ',a[i]);

For i:=1 to 15 do

Begin

If i mod 2=0 then k:=k+a[i];

If i mod 2=1 then n:=n+a[i];

End;

WriteLn('k=',k);

Writeln('n=',n);

Readln;

End. 

Задание 3. Организовать одномерный массив из 20 целых чисел. Найти сумму всех квадратных элементов в массиве и вывести на экран. 

program p2;

uses crt;

var a:array [1..20] of integer;

    i,s:integer;

begin clrscr;

      writeln ('vvedi 20 chisel');

      for i:=1 to 20 do readln (a[i]);

      for i:=1 to 20 do a[i]:=sqr(i);

      for i:=1 to 20 do writeln ('a[','i',']=',a[i]);

      for i:=1 to 20 do

      s:=s+a[i];

      writeln ('summa vsex kvadratnix elementov=',s);

      readln;

      end. 
 

Задание 4.

Организовать  одномерный массив путем заполнения его квадратами чисел от 1 до 10. Найти сумму чисел кратных 3. 

Program p4;

Uses crt;

Var a:array[1..10] of integer;

i,s:integer;

Begin

ClrScr;

Writeln('vvedite 10 chisel');

for i:=1 to 10 do Readln (a[i]);

for i:=1 to 10 do a[i]:=Sqr(i);

For i:=1 to 10 do WriteLn('a[',i,']=',a[i]);

For i:=1 to 10 do

if (a[i] mod 3=0) then

s:=s+a[i];

writeln('s=',s);

Readln;

End. 

Задание 5.

Организовать  одномерный массив из 20 чисел.  Удвоить  наибольший и наименьший элементы. 

Program p6;

Uses crt;

Var a:array[1..20] of integer;

i,max,min:integer;

Begin

ClrScr;

WriteLn('Vvedite massiv');

For i:=1 to 20 do readln(a[i]);

max:=a[1];

For i:=1 to 20 do If a[i]>max then max:=a[i];

max:=max*2;

min:=a[1];

For i:=1 to 20 do If a[i]<min then min:=a[i];

min:=min*2;

Writeln('Maksimalnij element massiva=',max);

Writeln('Minimalnij element massiva=',min);

Readln; End. 

Задание 6.

Организовать  массив из 20 чисел. Отсортировать по возрастанию. Вывести массив до и  после обработки. 

Program sortirovka;

Uses crt;

Var a:array[1..20] of integer;

i,j,b,d:integer;

Begin

ClrScr;

Randomize;

For i:=1 to 20 do a[i]:=random(51);

For i:=1 to 20 do Write('a[',i,']=',a[i]:3);

For j:=1 to 19 do

For i:=1 to 19 do

If a[i]>a[i+1] then

Begin

b:=a[i];

a[i]:=a[i+1];

a[i+1]:=b

End;

For i:=1 to 20 do Write('a[',i,']=',a[i]:3);

Readln;

End. 
 

Задание 7

Организовать  одномерный массив из 15 чисел. Первые 7 чисел отсортировать по возрастанию, последние 7 чисел  по возрастанию. Вывести  массив до и после обработки. 

Program p8;

Uses crt;

Var a:array [1..15] of integer;

i,j,t,b:integer;

Begin

ClrScr;

For i:=1 to 15 do ReadLn(a[i]);

For j:=1 to 7 do

Begin

t:=j;

For i:=j to 7 do

If a[i]<a[t] then

t:=i;

b:=a[t];

a[t]:=a[j];

a[i]:=b; End;

For j:=9 to 15 do

Begin

t:=i;

For i:=j to 15 do

If a[i]<a[t] then

t:=i;  b:=a[t];  a[t]:=a[j];

a[j]:=b; End;

For i:=1 to 15 do

Write(' ',a[i]); End. 

Задание 8.

В одномерном массиве  целых чисел определить минимальный  элемент, заменить его на 0. Стоящие за ним элементы на 6. 

Program p2;

Var a: array [1..10] of integer;

i,min,j,t:integer;

begin

Writeln ('vvedite massiv');

For i:=1 to 10 do Readln(a[i]);

For j:=1 to 10 do

begin

min:=a[1];

t:=1;

for i:=2 to 10 do

If a[i] <min: =a[i];

t:=i; End;

a[t]:=0;

for i:=t+1 to 10 do

a[i]:=6;

for i:=1 to 10 do

Writeln('a[',i,']=',a[i]); Readln; End. 

Задание 9.

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

Program p3;

Uses crt;

Var a :array[1..10] of integer;

i,s,n:integer;

sa,sg:real;

Begin

ClrScr;

Writeln ('vvedite massiv');

Begin

For i:=1 to 10 do Readln(a[i]);

End;

For i: =1 to 10 do

s:=s+a[i];

sa:=s/5;

For i:=1 to 10 do

If a[i]>sa then

Begin

n:=n+1;

End;

Writeln ('srednee arifmeticheskoe=', sa:3:2);

Writeln ('V massive',n,'elementov bolshih sred.arifmetich'); Readln; End. 

Задание 10.

Организовать  массив. Определить среднее арифметическое и геометрическое, сравнить их между собой, если ср. арифметическое>ср. геометрического, то прибавить к каждому элементу массива 2, если ср. геометрическое>ср. арифметического, то умножить на 2. 

Program p4;

Uses crt;

Var a :array[1..10] of integer;

c,n:real;

i:integer;

Begin

ClrScr;

Writeln('vvedite massiv');

for i:=1 to 10 do readln(a[i]);

for i:=1 to 10 do

c:=(c+a[i]);

c:=c/10;

for i:=1 to 10 do

n:=sqr(10);

if c>n then for i:=1 to 10 do

a[i]:=a[i]+2 else if n>c then for i:=1 to 10 do a[i]:=a[i]*2;

Writeln('c=',c,' n=',n);

Readln;

End. 

Задание 11.

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

Program p5;

Uses crt ;

Var a:array [1..10] of integer;

c,b,i,t,j:integer;

begin

Writeln('vvedite massiv');

For i:=1 to 10 do Readln(a[i]);

For j:=1 to 10 do

Begin

t:=j;

For i:=j to 10 do

If a[i]<a[t] then t:=i;

b:=a[t];

a[t]:=a[j];

a[j]:=b;

End;

Write('vivesti kontrolnoe chislo b=');

readln(b);

c:=0;

For i:=1 to 10 do

if a[i]=b then c:=i;

If c:=0 then

WriteLn('ravnih b net')

else for i:=1 to c-1 do a[i]:=-a[i];

For i:=1 to 10 do write(a[i]:2);

Readln;

End. 
 

Задание 12.

Дан массив, состоящий  из 20 символов. Отсортировать его  по возрастанию. Ввести 2 числа a и b от 0 до 255. Определить количество элементов, входящие в отрезок [char(a), char(b)]. 

Program p6;

Uses crt;

Var a:array[1..10] of integer;

i,j,b,t,c,f:integer;

Begin

Writeln('vvedite 20 elemenyov');

for i:=1 to 20 do Readln(a[i]);

for j:=1 to 20 do

Begin

t:=j;

for i:=j to 20 do

if a[i]<a[t] then t:=i;

b:=a[t];

a[t]:=a[j];

a[j]:=b;

End;

writeln('vvedite 2 chisla c<f');

Readln(c,f);

Writeln('elementi vhodyachie v otrezok [c,f]');

for i:=1 to 20 do

if (a[i]>=c) and (a[i]<=f) then write(a[i]:3);

WriteLn;

For i:=1 to 20 do

Write(' ',a[i]);

Readln;

End. 
 

Задание 13.

Дан одномерный массив из 10 целых чисел. Среди элементов массива найти корни квадратного уравнения x2+5-6=0. Если таковые отсутствуют, то вывести сообщение об этом.

Program P8;

var m:array [1..5] of integer;

   p,  i:integer;

     a,b,c,x1,x2:real;

     D:real;

Begin

    a:=1;

    b:=5;

    c:=-6;

    D:=b*b-4*a*c;

    If D>0 then

       begin

         x1:=(-b+sqrt(D))/(2*a);

Информация о работе Одномерные массивы. Организация ввода и вывода данных