Private void chkBlue_CheckedChanged(object sender, EventArgs e)
{ if (chkBlue.Checked) B = 255; else B = 0; DoColor(); } } } Значок - . Приблизительно то же самое, что и CheckBox. Отличие в том, что из нескольких радиокнопок в группе выбрана может быть только одна. Кнопки группируются в зависимости от владельца (Owner).
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms;
namespace PrFont { public partial class frmFont: Form { string FontText; public frmFont() { InitializeComponent(); }
private void btnExit_Click(object sender, EventArgs e) { Close(); }
private void rdbNormal_CheckedChanged(object sender, EventArgs e) { Font txtFont = new Font("Arial", 18); txtFormat.Font = new Font(txtFont, FontStyle.Regular); }
private void rdbBold_CheckedChanged(object sender, EventArgs e) { Font txtFont = new Font("Arial", 18); txtFormat.Font = new Font(txtFont, FontStyle.Bold); }
private void rdbItalic_CheckedChanged(object sender, EventArgs e) { Font txtFont = new Font("Arial", 18); txtFormat.Font = new Font(txtFont, FontStyle.Italic); }
} } Проект «Обучение английскому»
Namespace PrEnglish { Public partial class frmEnglish: Form { Public frmEnglish() { InitializeComponent(); } Private void btnExit_Click(object sender, EventArgs e) { Close(); } Private void rdbCat_CheckedChanged(object sender, EventArgs e) { picEnglish.Image = imlEnglish.Images[0]; } Private void rdbDog_CheckedChanged(object sender, EventArgs e) { picEnglish.Image = imlEnglish.Images[1]; } Private void rdbHorse_CheckedChanged(object sender, EventArgs e) { picEnglish.Image = imlEnglish.Images[2]; } } } МАССИВЫ Массив представляет собой структуру данных, позволяющую хранить под одним именем совокупность данных любого, но только одного какого-то типа. Массив характеризуется своим именем, типом хранимых элементов, размером (числом хранимых элементов), нумерацией элементов (индексом) и размерностью. Рассмотрим одномерный массив, то есть массив размерностью 1. Объявление массива: Тип переменная [константное_выражение] Например, int A[10]; объявляет массив с именем A, содержащий 10 целых чисел.
Заполнение массива данными: 1 способ int[] A = new int[10] { 2, 4, 2, 8, 4, 2, 12, 32, 65, 92 };
2 способ int[] A = new int[10]; Random rnd = new Random(); for (int I = 0; I < 10; I++) A[I] = rnd.Next(101)-50; 3 способ (на примере чисел Фибоначчи) A[0]=1; A[1]=1; for (int I=2; I<10; I++) A[ I ]= A[ I -2] + A[ I -1]; Вывод данных из массива в объект: 1 способ lblVivod.Text = ""; for (int I=0; I<10; I++) lblVivod.Text+= Convert.ToString(A[I]) + " "; 2 способ lstVivod.Items.Clear(); for (int I = 0; I < 10; I++) lstVivod.Items.Add(Convert.ToString(I) + " - " + Convert.ToString(A[I]));
Обработка массивов 1.Найти сумму элементов массива int Summa = 0; for (int I = 0; I < 10; I++) Summa += A[I]; lblSumma.Text = "Сумма=" + Convert.ToString(Summa);
2.Найти количество таких элементов массива, которые больше заданного числа F int Kolich = 0; for (int i = 0; i < N; i++) if (A[i] > F) Kolich++; lblKolEl.Text = "Количество элементов массива, больших " + Convert.ToString(F) + " = " + Convert.ToString(Kolich);
3.Поиск номера максимального элемента. int IndMax = 0; for (int i = 1; i < N; i++) if (A[IndMax] < A[i]) IndMax = i; lblMax.Text = "Индекс максимального элемента равен " + Convert.ToString(IndMax);
4.Сортировка выбором Идея метода заключается в том, что находится максимальный элемент массива и меняется местами с последним элементом (с номером N). Затем, максимум ищется среди элементов с первого до предпоследнего и ставится на N-1 место, и так далее. Необходимо найти N-1 максимум. Можно искать не максимум, а минимум и ставить его на первое, второе и так далее место. Также применяют модификацию этого метода с одновременным поиском максимума и минимума. В этом случае количество шагов внешнего цикла N div 2. Вычислительная сложность сортировки выбором - величина порядка N*N, что обычно записывают как O(N*N). Это объясняется тем, что количество сравнений при поиске первого максимума равно N-1. Затем N-2, N-3, и так далее до 1, итого: N*(N-1)/2.
int n=10; for (int j=0; j<n-1; j++)
{ int indmin=j; for (int i=j+1; i<n; i++) if (A[i]<A[indmin]) indmin=i; int tmp=A[j]; A[j]=A[indmin]; A[indmin]=tmp; }
4.Сортировка методом пузырька Идея метода заключается в том, что последовательно сравниваются пары соседних элементов массива. Если они располагаются не в том порядке, то совершаем перестановку, меняя местами пару соседних элементов. После одного такого прохода на последнем месте номер N окажется максимальный элемент ("всплыл" первый "пузырек"). Следующий проход должен рассматривать элементы до предпоследнего и так далее. Всего требуется N-1 проход. Вычислительная сложность сортировки обменом O(N*N). int n=10; for (int j=0; j<n-1; j++) { for (int i=0; i<n-j-1; i++) { if (A[i]>A[i+1]) { int tmp=A[i]; A[i]=A[i+1]; A[i+1]=tmp; } } }
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|