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 Выполнение программы


 

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

33064. Канонічні джерела, провідні ідеї та напрями філософії Стародавнього Китаю 57.41 KB
  Давньокитайська філософія порівняно з давньоіндійською виглядає стрункішою, деталізованішою (аж до нумерології та побудови вичерпних систем комбінаторики подвійних символічних елементів світобудови) та більше зануреною у глибину суперечливого, парадоксального мислення.
33065. Натурфілософія 13.62 KB
  ntur природа філософія природи умоглядне тлумачення природи що розглядається в її цілісності що спирається на абстрактні поняття що виробляються в ході виникнення і розвитку філософії. фюсис природа або фюсиологами а перші філософські трактати як правило були присвячені дослідженню природи її пристрої трактати Про природу були написані і Фалесом і Гераклитом і Анаксимандром і Анаксименом і Парменидом. філософія ще не існувала окремо від пізнання природи а знання про природу окремо від філософії. У центрі уваги усієї...
33066. Філософія Сократа 15.29 KB
  Платон. Платон 427347 рр. Учень Сократа Платон у 397 р. Платон долає проблему що зафіксована Сократом завдяки створенню гіпотези про існування специфічних предметів відмінних від речей навколишнього світу.
33067. Філософія Середньовіччя, її особливості 19.96 KB
  Фома Аквінський спрямовує свої зусилля на розмежування суті того у що віримо і що знаємо. Фома описує Бога як першопричину і конечну мету сущого як âчисту формуâ âчисту актуальністьâ або буття. Фома називає таке буття субстанцією. У своїх працях Фома розділяє догмати віри на такі що осягаються розумом Бог існує Бог єдиний душа людини безсмертна і такі що розумом не можуть бути осягнені творення світу трійця першородний гріх тощо.
33068. Основні напрями в середньовічній філософії /номіналізм та реалізм/ 15.02 KB
  Однією з особливостей середньовічної філософії є боротьба між реалістами та номіналістами. Слід зазначити, що реалізм у його середньовічному розумінні не має нічого спільного з сучасним значенням цього терміна. Реалізм - це вчення, згідно з яким об'єктивна реальність
33069. Гуманізм 14.01 KB
  Гуманізм епохи Відродження це сукупність навчань що представляють людини мислячої що вміє не тільки плисти за течією але і здатного пручатися і діяти самостійно. Саме гуманізм епохи Відродження проголосив інші принципи формування особистості. Гуманізм епохи Відродження прочинив цю завісу.
33070. Філософія Нового часу 17.08 KB
  Як і більшість мислителів Нового часу він вважав що завдання філософії створити новий метод наукового пізнання переосмислити завдання науки. Він вказував що правильно знати це знати опосередковано причинами і закликав застосовувати такі нові методи пізнання як індукція дедукція експеримент. Такий метод на думку Бекона мало придатний до пізнання. Усяке пізнання і усякий винахід повинні спиратися на досвід тобто повинні рухатися від вивчення поодиноких фактів до загальних положень.
33071. Рене Декарт 13.65 KB
  У теорії пізнання він розвиває раціоналізм тобто вчення згідно з яким розум думка визнаються найвищою цінністю. Метод наукового пізнання який Декарт розглядає в своїх працях Міркування про метод Правила для керівництва розумом називається аналітичним. Цей метод вимагає ясності і чіткості пізнання розчленування об'єкту на складові частини і вивчення їх руху думки від простого до складного. У теорії пізнання Спіноза розвиває раціоналізм.
33072. Просвітництво 13.8 KB
  Класичним філософом французького Просвітництва був Вольтер 16941778 головні ідеї якого викладені у працях: Філософські листи 1734 Метафізичний трактат 1734 Роздуми про людину 1737 Філософський словник 1764 Філософія історії 1765 та ін. Головне завдання своєї філософії Вольтер вбачає в розвінчуванні релігійної догматики що заважає людям будувати щасливе життя культивуючи неуцтво неосвіченість фанатизм брехню. У філософії природи Вольтер послідовник Ньютона. У теорії пізнання Вольтер прагнув поєднати сенсуалістичний...