Методические указания По проведению самостоятельных работ по
Скачать 1.54 Mb.
|
Лабораторная работа №6Тема: Работа с одномерными массивами в C# Задача 1. В одномерном массиве заданных чисел найдите сумму элементов массива. Ввод элементов осуществите вручную. Листинг10 using System; namespace mascons1 { classProgram { public static void Main (string[] args) { int [] a; a=newint [10]; int sum=0; string [] con; con =newstring [10]; for (int i=0;i<=9;i++) { Console .WriteLine ("Введите элемент массива: "); con [i]=Console .ReadLine (); a[i]=Convert .ToInt16 (con [i]); sum +=a[i]; } Console .WriteLine ("Сумма элементов массива = "+sum ); Console.Write("Нажмите на любую клавишу . . . "); Console.ReadLine (); } } } Задача2. Видоизмененный пример, в котором элементы массива заранее известны в списке инициализаторов. Листинг11 using System; namespace mascons1 { class Program { public static void Main(string[] args) { int [] a; a=new int[10]{1,2,3,4,5,6,7,8,9,15}; int sum=0; Console .WriteLine ("Исходный массив: "); for (int i=0;i<=9;I ++) Console .WriteLine ("\t"+a[i]); Console .WriteLine (); for (int i=0;i<=9;i++) sum=sum +a[i]; Console .WriteLine ("Сумма элементов массива = "+sum ); Console .WriteLine (); Console.Write("Нажмите на любую клавишу . . . "); Console.ReadLine (); } } } Задача 3. Код решения предыдущей задачи, написанной как Windows-приложение. Листинг12 Using System; using System.Collections.Generic; using System.Drawing; using System.Windows.Forms; namespace maswinap1 { public partial class MainForm :Form { public MainForm() { InitializeComponent(); } void MainFormLoad (object sender, EventArgs e) { int [] a; a=new int[10]; int sum=0; string [] b; b =new string[10]; for (int i=0;i<=9;i++) { b [i]=Microsoft .VisualBasic .Interaction .InputBox ("Введите число","Окно ввода","",-1,-1); a[i]=Convert .ToInt16 (b [i]); sum +=a[i]; } MessageBox .Show ("Сумма элементов массива = "+sum.ToString ("N"),"Заголовок окна",MessageBoxButtons .OK ,MessageBoxIcon .Information ); Application .Exit (); } } } Задача 4. В одномерном массиве заданных чисел найдите сумму элементов массива. Ввод элементов массива осуществляется оператором Random. Вывод элемента массива на элемент управления TextBox Листинг13 using System; using System.Collections.Generic; using System.Drawing; using System.Windows.Forms; namespace labmas2win { public partial class MainForm : Form { public MainForm() { InitializeComponent(); } void Button1Click(object sender, EventArgs e) { Random a=new Random (); byte []b =new byte [10]; double sum=0; textBox1 .Clear (); textBox2 .Clear (); for (int i=0;i<=9;i++) { a.NextBytes (b); textBox1 .Text =textBox1 .Text + System .String .Format ("{0}",b[i])+"\t"; textBox2 .Text =textBox2 .Text + System .String .Format ("{0:f2}",b[i])+"\t"; sum=sum+b[i]; } MessageBox .Show ("Сумма элементов массива = "+sum.ToString ("n"),"Заголовококна", MessageBoxButtons .OK , MessageBoxIcon .Information ); } } } Задача 5. В одномерном массиве заданных чисел найдите сумму элементов массива. Ввод элементов массива осуществляется оператором Random. Вывод элемента массива на элемент управления ListBox Листинг14 using System; using System.Collections.Generic; using System.Drawing; using System.Windows.Forms; namespace saramaswin3 { public partial class MainForm : Form { public MainForm() { InitializeComponent(); } void Button1Click (object sender, EventArgs e) { Random a=new Random (); byte []b =new byte [10]; double sum=0; listBox1 .Items .Clear (); for (int i=0;i<=9;i++) { a.NextBytes (b); listBox1 .Items.Add (b[i]); sum=sum+b[i]; label1 .Text ="Сумма элементов массива = "+sum.ToString ("n"); } } } } Задание 6: Найдите максимальный элемент массива B [10]. Значения массива формировать автоматически с помощью Random вдиапазоне (-20,20). Листинг15 using System; using System.Collections.Generic; using System.Drawing; using System.Windows.Forms; namespace massivsum { ///<summary> /// Description of MainForm. ///</summary> public partial class MainForm :Form { public MainForm() { } void MainFormLoad (object sender, EventArgs e) { } void Button1Click (object sender, EventArgs e) { Random a= newRandom (); int[] b= newint [10]; int sum=0; textBox1 .Clear (); for (int i=0; i<=9;i++) { b[i]=a.Next (-20,20); textBox1 .AppendText (b[i]+"\t"); } intmax=b[0]; for (int i=1; i<=9;i++) { if (b[i]>max) max=b[i]; } MessageBox .Show ("Максимальное число массива = "+ max.ToString ("d"), "Заголовок окна", MessageBoxButtons .OK ,MessageBoxIcon .Information ); } } }
ЛИТЕРАТУРА Есипов А.С., Паньгина Н.Н., Громада М.И. Информатика. Сборник задач и решений для общеобразовательных учебных заведений. СПб.: Наука и техника, 2001. 368 с. Окулов С.М. Программирование в алгоритмах. М.: Бином. Лаборатория знаний, 2004. 341 с. Юркин А.Г. Задачник по программированию. СПб.: Питер, 2002. 192 с. Эндрю Троелсен. Язык программирования C# 5.0 и платформа .NET 4.5. М.: Вильямс. 2013 г. 1312 с. Албахари, Дж. С# 3.0. Справочник: Пер. с англ./ Дж. Албахари, Б. Албахари. – 3-е изд. – Спб.: БХВ-Петербург, 2009. – 944 с.: ил. Биллиг В. Основы программирования на C# // Интуит [2013]. Дата обновления: 22.11.2005. URL: http://www.intuit.ru/studies/courses/2247/18/info (дата обращения: 27.06.2013). Павлоская Т. Программирование на языке высокого уровня C# // Интуит [2013]. Дата обновления: 15.09.2010. URL: http://www.intuit.ru/studies/courses/2247/18/info (дата обращения: 27.06.2013). Вихтенко Э. М. Геометрические задачи в олимпиадах по программированию. Изд-во МИФ-2 №2. 2005 г. Липский В. Комбинаторика для программистов. – М.: Мир, 1988. –200 с. |