
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
try
{
double[] ar = new double[8];
ar[0] = Convert.ToDouble(textBox1.Text);
ar[1] = Convert.ToDouble(textBox2.Text);
ar[2] = Convert.ToDouble(textBox3.Text);
ar[3] = Convert.ToDouble(textBox4.Text);
ar[4] = Convert.ToDouble(textBox5.Text);
ar[5] = Convert.ToDouble(textBox6.Text);
ar[6] = Convert.ToDouble(textBox7.Text);
ar[7] = Convert.ToDouble(textBox8.Text);
label21.Text = "В сумме :";
double min1 = Convert.ToDouble(textBox1.Text);
double sum = 0.0;
int perv, posledn;
perv = -1;
posledn = -1;
for (int i = 0; i < 8; ++i)
{
if (min1 > ar[i]) min1 = ar[i];
if ((perv == -1) && (ar[i] > 0)) perv = i;
}
if (perv > -1)
{
for (int i = 7; i >= perv; --i)
{
if ((ar[i] > 0) && (posledn == -1)) posledn = i;
if (posledn >= 0)
{
sum += ar[i];
label21.Text += " ar[" + i + "]=" + ar[i];
}
}
textBox17.Text = Convert.ToString(min1);
textBox18.Text = Convert.ToString(sum);
} // конец подсчета суммы между положительными числами
for (int i = 0; i < 7; ++i)
{
if (ar[i] != 0)
{
for (int j = i + 1; j < 8; ++j)
{
if (ar[j] == 0)
{
double temp;
temp = ar[i];
ar[i] = ar[j];
ar[j] = temp;
break;
}
}
}
}
textBox9.Text = Convert.ToString(ar[0]);
textBox10.Text = Convert.ToString(ar[1]);
textBox11.Text = Convert.ToString(ar[2]);
textBox12.Text = Convert.ToString(ar[3]);
textBox13.Text = Convert.ToString(ar[4]);
textBox14.Text = Convert.ToString(ar[5]);
textBox15.Text = Convert.ToString(ar[6]);
textBox16.Text = Convert.ToString(ar[7]);
}
catch (Exception ex)
{
label21.Text = " Ошибка ввода. "+ex.Message;
}
}
}
}
Лаб6: Двумерные массивы |
Задание :
Результат
:
Решение :
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication17
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void textBox6_TextChanged(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
int min=0, sum=0, max=0;
int min_i1=-1, max_j1=-1;
int min_i2=-1, max_j2=-1;
textBox14.Text = "нет";
textBox15.Text = "нет";
textBox16.Text = "нет";
int[,] mas = new int[3, 3];
try
{
mas[0, 0] = Convert.ToInt32(textBox2.Text);
mas[0, 1] = Convert.ToInt32(textBox3.Text);
mas[0, 2] = Convert.ToInt32(textBox4.Text);
mas[1, 0] = Convert.ToInt32(textBox5.Text);
mas[1, 1] = Convert.ToInt32(textBox6.Text);
mas[1, 2] = Convert.ToInt32(textBox7.Text);
mas[2, 0] = Convert.ToInt32(textBox8.Text);
mas[2, 1] = Convert.ToInt32(textBox9.Text);
mas[2, 2] = Convert.ToInt32(textBox10.Text);
for (int i = 0; i < 3; ++i)
{
min = mas[i, 0];
sum = 0;
min_i1=i;
max_j1=0;
min_i2=i;
max_j2=0;
for (int j = 0; j < 3; ++j)
{
sum += mas[i, j];
if (min > mas[i, j])
{
min = mas[i, j];
min_i1=i;
max_j1=j;
}
}
max = min; //mas[i, max_j1];
for (int k=0;k<3;++k)
{
if (max < mas[k, max_j1])
{
max = mas[k, max_j1];
min_i2=k;
max_j2=max_j1;
}
}
if ((min == max))//&&(min_i1==min_i2)&&(max_j1==max_j2))
{
int sedlo = mas[min_i1, max_j1];
switch (i)
{
case 0:
textBox14.Text = Convert.ToString(sedlo);
//"mas [" +Convert.ToString(min_i1) + "," + Convert.ToString(max_j1) + "]=" +Convert.ToString(sedlo);
break;
case 1:
textBox15.Text = Convert.ToString(sedlo);
break;
case 2:
textBox16.Text = Convert.ToString(sedlo);
break;
}
}
switch (i)
{
case 0:
if (min < 0) textBox11.Text = Convert.ToString(sum);
else textBox11.Text = "-";
break;
case 1:
if (min < 0) textBox12.Text = Convert.ToString(sum);
else textBox12.Text = "-";
break;
case 2:
if (min < 0) textBox13.Text = Convert.ToString(sum);
else textBox13.Text = "-";
break;
} //end switch
}//end for
} // end try
catch { }
}
}
}
Лаб 7: Работа со строками |
Задание
Написать программу которая считывает данные из строки и выводит только строки не содержащие запятые .
Результат
Решение
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication18
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{ // если нет запятых в тект1 то вывести в текст 2
textBox2.Text = "";
string s;
s= textBox1.Text;
if (s.IndexOf(",")>=0 )
{
textBox2.Text = "имеются запятые в исходном тексте ";
}
else
textBox2.Text = textBox1.Text;
}
}
}
Лаб 8: Работа со строками |
Задание Удалить из строки подряд идущие пробелы .
Результат
Решение:
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
int kolprobel=0;
int kol=0;
string s = textBox1.Text;
for (int i = 0; i <= s.Length - 1; i++)
{
if (s[i] == ' ')
{
kol++;
if (kolprobel < kol) kolprobel = kol;
}
else
{
kol = 0;
}
if (kol <= 1)
{
textBox2.Text += s[i];
}
}
}
private void panel1_Paint(object sender, PaintEventArgs e)
{
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
}
Лаб 9: Работа с циклами |
Задание : выполнить расчет значений с помощью циклов for. While. Do while
Результат:
Решение: using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{