Главная страница

Методические указания По проведению самостоятельных работ по


Скачать 1.54 Mb.
НазваниеМетодические указания По проведению самостоятельных работ по
Дата12.01.2023
Размер1.54 Mb.
Формат файлаdocx
Имя файлаuser_file_5bc37b9bc8888.docx
ТипМетодические указания
#882698
страница10 из 11
1   2   3   4   5   6   7   8   9   10   11

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


Разветвляющиеся алгоритмы

Синтаксис условного оператора:

If (логическое выражение)

P1;

Else

P2
Задача.Торговый агент получает процент от суммы совершенной сделки. Если объем сделки до 3000, то 5%; если объем от 3000 до 10000, то 10%; если выше 10000, то 20%. Рассчитать сумму вознаграждения.
Интерфейс программы:

Листинг 5

namespace saif1
{
    /// <summary>
    /// Description of MainForm.
    /// </summary>
    public partial class MainForm : Form
    {
        public MainForm()
        {
            
            InitializeComponent();
            
                    }
        
        void Button1Click (object sender, EventArgs e)
        {
            double z=Convert.ToDouble  (textBox1 .Text);
            double Prem;
            if (z<3000)
            { Prem =z*.05;
            }
                    else 
                    if (z<=10000)
                {Prem =z*0.1;
                }
                else
                {
                    Prem =z*0.2;
                }
                textBox2 .Text =Prem .ToString ("f")+"  руб.";
            }
        
        
        void Button2Click(object sender, EventArgs e)
        {
            Application .Exit ();
        }
        }
    }
Задания для самостоятельного выполнения:

  1. Напишите программу, определяющую четность или нечетность введенного с клавиатуры целого числа.

  2. Напишите программу, находящую максимум из 3-х чисел, введенных с клавиатуры

  3. Напишите программу нахождения корней квадратного уравнения при условии, что если дискриминант больше или равно 0, оно имеет корни, в обратном случае – уравнение корней не имеет.

  4. Ввести номер года (положительное целое число). Определить количество дней в этом году, учитывая, что обычный год насчитывает 365 дней, а високосный – 366 дней. Високосным считается год, делящийся на 4, за исключением тех годов, которые делятся на 100 и не делятся на 400 ( например, годы 300, 1300, 1900 не являются високосными, а 1200 и 2000 – являются)


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


Тема: Циклические алгоритмы

Операторы цикла for, while

Задача 1: Создайте консольное приложение для нахождения суммы целых чисел от 1 до 10.

Листинг 6

using System;

namespace sarforcons
{
    class Program
    {
        public static void Main(string[] args)
        {
            int i;
            int s=0;
            for (i=1;i<=10;i++)
                s=s+i;
            Console .WriteLine ("Суммачиселот 1 до 10 = "+s);
                        
            Console.Write("Нажмитеналюбуюклавишу...");
            Console.ReadKey(true);
        }
    }
}

(Результат выведет число 55. Модифицируйте программу, чтобы программа запрашивала число повторов, например, от 1 до числа n (n – целое положительное число).

Задача 2: Создайте консольное приложение для вывода таблицы умножения (используются вложенные циклы)

Листинг 7

using System;

namespace sarfor2
{
    class Program
    {
        public static void Main(string[] args)
        {
            Console.WriteLine ("Введитецелоечислоот 1 до 10");
            int n=Convert .ToInt32 (Console .ReadLine ());
            for (int i=1; i<=n;i++)
            {
                for (int j=1; j<=10;j++)
                    Console .WriteLine (i+" * "+j+" = "+i*j);
                    Console .WriteLine ();
            }
            
            Console.Write("Нажмитедляпродолжениялюбуюклавишу. . . ");
            Console.ReadKey(true);
        }
    }
}

Результат:



Задача 3. Вычислите значения y, соответствующие каждому значению x (xn≤x≤xk, шаг изменения x равен dx) по формуле

Вычислите сумму положительных значений y, произведение ненулевых значений y, количество отрицательных значений Y.

Результаты выведите на элемент управления ListBox

Листинг8

using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;

namespace sarawhile
{
    /// <summary>
    /// Description of MainForm.
    /// </summary>
    public partial class MainForm : Form
    {
        public MainForm()
        {
            //
            // The InitializeComponent() call is required for Windows Forms designer support.
            //
            InitializeComponent();
            
           }
        
        void Button1Click(object sender, EventArgs e)
        {
            double xn=Convert .ToDouble (textBox1 .Text);
            double xk=Convert .ToDouble (textBox2 .Text);
            double dx=Convert .ToDouble (textBox3 .Text);
            double p=1;
            double s=0;
            double k=0;
            double x=xn;
            listBox1 .Items .Clear ();
            listBox1 .Items .Add (" x "+"         y ");
            listBox1 .Items .Add (" ");
            while (x<=xk)
            {
                double y= Math .Exp (Math.Sin (x))*Math .Cos (x);
                listBox1 .Items .Add (" "+x.ToString ()+"    "+y.ToString ());
                if (y>=0)
                    s=s+y;
                else
                    k=k+1;
                if (y!=0)
                    p=p*y;
                x=x+dx;
                
            }
            textBox4 .Text =s.ToString ();
            textBox5 .Text =p.ToString ();
            textBox6 .Text =k.ToString ();
        }
    }
}


Задача 4.Разработайте интерфейс и программный код на С # для решения следующей задачи: Последовательно вводятся 6 чисел (последний элемент последовательности равен 5). Определите, каких среди них больше: положительных или отрицательных?

Листинг9

using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;

namespace safor11
{
    /// <summary>
    /// Description of MainForm.
    /// </summary>
    public partial class MainForm : Form
    {
        public MainForm()
        {
            //
            // The InitializeComponent() call is required for Windows Forms designer support.
            //
            InitializeComponent();
            
            //
            // TODO: Add constructor code after the InitializeComponent() call.
            //
        }
        
        void MainFormLoad(object sender, EventArgs e)
        {
            int pol=0;
            int otr=0;
            double chis=0;
            string  astr;
            while (chis !=5)
            {
                astr = Microsoft .VisualBasic .Interaction.InputBox ("Введитечисло:","Окновводаданных","",-1,-1);
                chis =Convert .ToDouble (astr);
                if (chis>0)
                    pol=pol+1;
                else 
                    otr=otr+1;
            
            }
            if (pol>otr)
                MessageBox .Show ("Положительныхчиселбольше","Заголовококна",MessageBoxButtons .OK ,MessageBoxIcon .Information );
                    else
                MessageBox .Show ("Отрицательныхчиселбольше","Заголовококна",MessageBoxButtons .OK ,MessageBoxIcon .Information );
                    Application.Exit ();
        }
    }
}
Задание №5

  1. Разработайте интерфейс и программный код на С # для решения следующей задачи: Последовательно вводятся 6 чисел. Определите, каких среди них больше: положительных или отрицательных



  1. Вводится последовательность из N чисел.

Найдите:

  • Сколько в ней чисел, равных числу 100 и количество отрицательных чисел;

  • Количество положительных чисел;

  • Среднее арифметическое чисел.


1   2   3   4   5   6   7   8   9   10   11


написать администратору сайта