16211

Линейный поиск

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

Информатика, кибернетика и программирование

ОТЧЕТ по лабораторной работе №3 по дисциплине Программирование на тему Линейный поиск Вариант 24 1 Постановка задачи В массиве Zn найти наиболее длинную цепочку стоящих подряд попарно различных элементов. ...

Русский

2013-06-20

72.96 KB

6 чел.

ОТЧЕТ

по лабораторной работе №3

по дисциплине Программирование

на тему «Линейный поиск»

Вариант 24

1 Постановка задачи

В массиве Z(n) найти наиболее длинную цепочку стоящих подряд попарно различных элементов.

2 Блок-схема


3 Исходный код

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

namespace WindowsFormsApplication1

{

   public partial class Form1 : Form

   {

       public int size;

       public Form1()

       {

           InitializeComponent();

       }

       private void textBox1_TextChanged(object sender, EventArgs e)

       {

           if (int.TryParse(input_textBox1.Text, out size) && (size < 656))

           {

               run_button1.Enabled = true;

               output_dataGridView1.ColumnCount = size;

               output_dataGridView1.RowCount = 1;

           }

           else run_button1.Enabled = false;

       }

       private void button1_Click(object sender, EventArgs e)

       {

           size = int.Parse(input_textBox1.Text);

           Random rnd = new Random();

           int[] arr = new int[size];

           if (rnd_checkBox1.Checked)

           {

               for (int i = 0; i < size; i++)

               {

                   arr[i] = rnd.Next(20);

                   output_dataGridView1[i, 0].Value = Convert.ToString(arr[i]);

                   output_dataGridView1[i, 0].Style.BackColor = Color.White;

               }

           }

           else

           {

               for (int i = 0; i < size; i++)

               {

                   arr[i] = Convert.ToInt16(output_dataGridView1[i, 0].Value);

                   output_dataGridView1[i, 0].Style.BackColor = Color.White;

               }

           }

           int beg = 0, end = 0, ibeg = 0, iend = 0;

           for (int i = 0; i < size; i++)

           {

               ibeg = i;

               int j = i;

               bool not_equal = true;

               while ((j < size) && (not_equal))

               {

                   for (int k = i; k < j; k++)

                   {

                       if (arr[k] == arr[j]) not_equal = false;

                   }

                   j++;

               }

               if (!not_equal) { iend = j - 1; } else { iend = j; };

               if (iend - ibeg > end - beg)

               {

                   end = iend;

                   beg = ibeg;

               }

           }

           for (int i = beg; i < end; i++)

           {

               output_dataGridView1[i, 0].Style.BackColor = Color.Red;

           }

           int length = end - beg;

           label1.Text = "Длина цепочки: " + length;

      }

   }

}

4 Пример работы

На рисунке 1 показан пример работы программы:

Рисунок 1 Выполнение программы


 

А также другие работы, которые могут Вас заинтересовать

11908. Основные правила работы в лабораториях кафедры прикладной физики 48 KB
  Основные правила работы в лабораториях кафедры прикладной физики I.На каждое лабораторное занятие студенты должны приносить ссобой: а лабораторный журнал тетрадь в клетку не менее 48 листов. бнесколько листов миллиметровой бумаги формата А4 А5. вклей для бума
11909. СТАТИСТИКА ВРЕМЕНИ РЕАКЦИИ ЧЕЛОВЕКА (Статистическая обработка результатов измерений) 80.5 KB
  Лабораторная работа № 1 СТАТИСТИКА ВРЕМЕНИ РЕАКЦИИ ЧЕЛОВЕКА Статистическая обработка результатов измерений Цель работы: определение времени реакции человека. Ознакомление со статистической обработкой результатов измерений. Приборы и принадлежности: измерител...
11910. ФИЗИЧЕСКИЙ МАЯТНИК Введение Описание установки 38.39 KB
  Лабораторная работа № 5 ФИЗИЧЕСКИЙ МАЯТНИК Введение Описание установки Рис. 1 Физический маятник представляет собой твердое тело в нашем случае стержень 12 с отверстиями который монтируется на блоке 11 закрепленном на стойке 10 модуля ЛКМ3 так чтобы ось блока не пр...
11911. Алгоритмы речевого кодирования в стандарте GSM 544.5 KB
  Лабораторная работа по курсу Информационные технологии в телекоммуникационных системых Алгоритмы речевого кодирования в стандарте GSM Содержание [0.0.1] Лабораторная работа [0.0.1.1] Алгоритмы речевого кодирования [0.1] В...
11912. Оценка качества речи, передаваемой по каналу GSM 704 KB
  Лабораторная работа по курсу Проектирование информационных и телекоммуникационных систем Оценка качества речи передаваемой по каналу GSM Содержание Лабораторная работа Содержание Задание Теорети...
11913. Изучение электронного осциллографа 717.55 KB
  Отчёт по лабораторной работе № 1 Изучение электронного осциллографа Цель работы. Ознакомление с устройством электронного осциллографа; изучение с помощью этого прибора процессов в простых электрических цепях. Приборы и оборудование. 1. Электронный о
11914. Изучение свободных электромагнитных колебаний в LRCконтуре 327.5 KB
  Отчет по лабораторной работе №4 14 Изучение свободных электромагнитных колебаний в LRCконтуре. Выполнили: студенты 1.Теоретическое введение. Из определения LRC: где коэффициент затухания. собственная частота контура. При малые затухания. где ...
11915. Измерение коэффициента взаимной индукции в переменном поле 145.5 KB
  Лабораторная работа N 9 Измерение коэффициента взаимной индукции в переменном поле 1 Цель работы: Измерение коэффициента взаимной индукции коаксиальных катушек на основе закона электромагнитной индукции. 2 Теоретическая часть: Явление взаимной индукции заклю
11916. Определение отношения заряда электрона к массе методом магнетрона 569.5 KB
  Лабораторная работа № 12 Определение отношения заряда электрона к массе методом магнетрона. Цель работы: Цель работы: Изучение движения электронов во взаимно перпендикулярных электрическом и магнитном полях в магнетроне определение по параметрам этого движен