Складання та відлагодження програм з обробки лінійних масивів

Автор работы: Пользователь скрыл имя, 09 Июня 2011 в 20:13, лабораторная работа

Описание

Мета: придбати практичні навички з складання та відлагодження програм з обробки лінійних масивів.

Завдання:

Завдання №1: Дано масив А(9). Обробити його за наступним алгоритмом:

Порахувати кількість ненульових елементів масиву.

Завдання №2: Дано масив MAS(11). Обробити його за наступним алгоритмом:

Знайти максимум додатних непарних елементів масиву. Відсортувати масив за незростанням елементів , виключуючи з масиву непарні елементи.

Работа состоит из  1 файл

Задание №6-9.docx

— 29.62 Кб (Скачать документ)

    ЛАБОРАТОРНА РОБОТА №6-7

    Складання та відлагодження програм з обробки  лінійних масивів

     Мета: придбати практичні навички з складання та відлагодження програм  з обробки лінійних масивів.

    Завдання:

    Завдання №1: Дано масив  А(9). Обробити його за наступним алгоритмом:

        Порахувати   кількість   ненульових  елементів  масиву.

    Завдання №2: Дано масив  MAS(11). Обробити його за наступним алгоритмом:

    Знайти  максимум  додатних непарних  елементів  масиву. Відсортувати   масив за незростанням елементів , виключуючи з масиву непарні елементи. 

    

Текст програм:

    Завдання №1

    #include <iostream.h>

    #include <conio.h>

    #include <math.h>

    #include <stdio.h> 

    int main(){ int Mas[9],k(0),i,answer;

            clrscr();

            puts(" Vvedite vse elementy massiva ");

            for (i=0;i<9;i++) {

               scanf("%i",&Mas[i]);

               }

            puts("Vvedite 1 - tradic dostyp; 2- netradic");

            scanf("%i",&answer);

            switch(answer){

            case 1: {

            for (i=0; i<9; i++) {

               if (Mas[i]!=0) k++;}

               if (k==0){

            printf(" Net takix cyfr "); }

            else

           {  printf("kolichestvo nenyley = %4i",k);}

               break;}

            case 2: { for (i=0;i<9;i++){

                if (*(Mas+i)!=0)k++;}

                if (k==0) {

            printf(" Net takix cyfr ");}

            else

           {  printf("kolichestvo nenyley = %4i",k);}

                break;} 

          //close switch

           }

             return 0;

            getch();

           }

    Завдання №2

    #include <stdio.h>

    #include <conio.h>

    #include <math.h> 

     int main(){ int Mas[11],i,max(-5000),Mas2[11],j(0),rab[11],sort;

     clrscr();

       puts(" Vvedite vse elementy massiva ");

            for (i=0;i<=11;i++) {

               scanf("%i",&Mas[i]);

               }

            for (i=0; i<=11; i++) {

               if ((Mas[i]>max) && (Mas[i]%2!=0) && (Mas[i]>0)) {

                  max=Mas[i];}

                          } 

            for (i=0; i<=11; i++) {

                if (Mas[i]%2==0) {j++; Mas2[j]=Mas[i]; }}

     if (max==-5000) {puts("Maximum nayti nelza");}

     else{

      printf("Soglasno usloviu max = %4i\n",max);} 

        if (j==0) {

                puts(" Nyznix chisel dla sortirovki net "); } 
     

    m: for (i=1;i<=j-1;i++){

          if (Mas2[i]>Mas2[i+1])

      {

        sort=Mas2[i];

        Mas2[i]=Mas2[i+1];

        Mas2[i+1]=sort;

        goto m; 

       }} 

       if (j!=0) {

       printf("\n Sortirovaniy massiv: ");

       for (i=1; i<=j; i++) {

           printf("%4i",Mas2[i]);}} 

            getch();

            return 0;

           }

 

 

    ЛАБОРАТОРНА РОБОТА №8-9

    Складання  та від лагодження програм з використанням  ітераційних циклів

    Мета: Придбати практичні навички при складання програм алгоритмів з ітераційними циклами.

    Завдання:

    Умова: Скласти 2 програми (використовуючи як WHILE так і  DO…WHILE) для вирішення наступної задачі. Усі введені з клавіатури числа зберігти у памяті (у масиві), вивести їх, а також результати роботи програми у таблицю. Введення даних організувати безпосередньо у таблиці (встановлюючи курсор у відповідний комірець таблиці).     

      Завдання: Робити перемноження тільки парних додатних серед чисел, що вводяться  до 1-го введеного від`ємного числа (але  вводити не більше, ніж 10 чисел). 

Текст програм:

    WHILE 

    #include <stdio.h>

    #include <math.h>

    #include <conio.h> 

    int main(void){ int p,i=0,Mas[10],x=0,h=0,r,s=0;

                long l=1; 

         Mas[i]=1;

    //     clrscr();

         while(x<10){

            puts("Vvedite chislo: ");

            scanf("%i",&Mas[i]);

           x++;

           s++;

            if (Mas[i]<0) { goto r;

          // goto m;

           }

            if ((Mas[i]%2==0)&&(Mas[i]>0)){

                                  l=l*Mas[i];

                              h++; }

              i++;

              }  

        r:  if (h==0) {   printf("ÉÍÍÍÍÍÍÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍ»\n");

            printf("º Rezultat º 1  º 2  º 3  º 4  º 5  º 6  º 7 º 8 º 9 º 10 º\n");

           printf("ÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍ͹\n");

            printf("ºNet chiselº");

                 for (i=0; i<=s-1; i++) {

            printf("%4iº",Mas[i]); }

            for (i=s; i<=9; i++){

            printf(" -- º"); }

            printf("\n__________________________");

            goto m;}

            if (l==1) {   printf("_______________________________\n");

            printf("º Rezultat º 1  º 2  º 3  º 4  º 5  º 6  º 7 º 8 º 9 º 10 º\n");

            printf("____________________________________\n");

            printf("ºNet chiselº");

                 for (i=0; i<=s-1; i++) {

            printf("%4iº",Mas[i]); }

            for (i=s; i<=9; i++){

            printf(" -- º"); }

            printf("\n_____________________________________");}

            else

            printf("___________________________________\n");

            printf("º Rezultat º 1  º 2  º 3  º 4  º 5  º 6  º 7 º 8 º 9 º 10 º\n");

            printf("_________________________________\n");

            printf("º%10iº",l);

                 for (i=0; i<=s-1; i++) {

            printf("%4iº",Mas[i]); }

            for (i=s; i<=9; i++){

            printf(" -- º"); }

            printf("\n_____________________________________");

         m:    getch();

            return 0;

           }

    DO…WHILE 

    #include <stdio.h>

    #include <math.h>

    #include <conio.h> 

    int main(void){ int p,i=0,Mas[10],x=0,h=0,r,s=0;

                long l=1; 

         Mas[i]=1;

         clrscr();

         do{

            puts("Vvedite chislo: ");

            scanf("%i",&Mas[i]);

           x++;

           s++;

            if (Mas[i]<0) { goto r;

          // goto m;

           }

            if ((Mas[i]%2==0)&&(Mas[i]>0)){

                                  l=l*Mas[i];

                              h++; }

              i++;

              } while(x<10); 

        r:  if (h==0) {   printf("ÉÍÍÍÍÍÍÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍ»\n");

            printf("º Rezultat º 1  º 2  º 3  º 4  º 5  º 6  º 7 º 8 º 9 º 10 º\n");

           printf("ÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍ͹\n");

            printf("ºNet chiselº");

                 for (i=0; i<=s-1; i++) {

            printf("%4iº",Mas[i]); }

            for (i=s; i<=9; i++){

            printf(" -- º"); }

            printf("\_______________________________");

            goto m;}

            if (l==1) {   printf("_____________________________________\n");

            printf("º Rezultat º 1  º 2  º 3  º 4  º 5  º 6  º 7 º 8 º 9 º 10 º\n");

            printf("___________________________________\n");

            printf("ºNet chiselº");

                 for (i=0; i<=s-1; i++) {

            printf("%4iº",Mas[i]); }

            for (i=s; i<=9; i++){

            printf(" -- º"); }

            printf("\n____________________________________");}

            else

            printf("___________________________________\n");

            printf("º Rezultat º 1  º 2  º 3  º 4  º 5  º 6  º 7 º 8 º 9 º 10 º\n");

            printf("__________________________________\n");

            printf("º%10iº",l);

                 for (i=0; i<=s-1; i++) {

            printf("%4iº",Mas[i]); }

            for (i=s; i<=9; i++){

            printf(" -- º"); }

           printf("\n__________________________________________");

         m:    getch();

            return 0;

           }

Информация о работе Складання та відлагодження програм з обробки лінійних масивів