Функции. Изучение назначения, формата объявления/определения и принципа действия функций. Составление консольных приложений с использованием функций

Страницы работы

Содержание работы

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ

НАЦИОНАЛЬНЫЙ АЭРОКОСМИЧЕСКИЙ УНИВЕРСИТЕТ

ИМ. Н. Е. ЖУКОВСКОГО «ХАИ»

Выполнил: студентка группы 335

Старцева А.В.

Проверил: доцент каф. 304

Скоб Ю.А

ЛАБОРАТОРНАЯ РАБОТА №4

«Функции»

ВАРИАНТ № 8

Цель 

•  Изучение  назначения,  формата  объявления/определения  и  принципа  действия  функций.

•  Исследование механизма передачи параметров при вызове функции.

•  Составление консольных приложений с использованием функций.

•  Усвоение принципа локализации имен.

Условие

Программныйкод:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace Startseva

{

    class Program

    {

        static void Main(string[] args)

        {

            double

                y, a, x, b,   // переменные для арифметического выражения              

                X, Y;          // переменные для логического выражения

            string

                    FullName = "",  // переменные для строкового выражения

                        FirstName,

                        Surname;

            bool

                    Z, A, B, C;    // логические переменные для логического выражения

            int

                        iFirstName,   // количество символов в имени

                        iSurname,    // количество символов в фамилии

                        iFullName;    // количество символов в полном имени

            ReadData(out a, out x, out b, out X, out Y, out A, out B, out C, out FirstName, out Surname);

            y = ArithFunc(x, a, b);

            Z = BoolFunc(X, Y, A, B, C);

            iFullName = CharFunc(FirstName, Surname, ref FullName, out iFirstName, out iSurname);

            WriteData(y, Z, FullName, iFullName, iFirstName, iSurname);

        }

        // функция ввода исходных данных с консоли

        static void ReadData(out double x, out double a, out  double b, out double X,

        out double Y, out bool A, out bool B,out bool C, out string FirstName, out string Surname)

        {

            string line;      // буфферная строка ввода

            Console.WriteLine(" ***** Ввод исходных данных (ReadData)*****\n");

            Console.Write(" x = "); line = Console.ReadLine(); x = Double.Parse(line);

            Console.Write(" a = "); line = Console.ReadLine(); a = Double.Parse(line);

            Console.Write(" b = "); line = Console.ReadLine(); b = Double.Parse(line);

            Console.Write(" X = "); line = Console.ReadLine(); X = Double.Parse(line);

            Console.Write(" Y = "); line = Console.ReadLine(); Y = Double.Parse(line);

            Console.Write(" A = "); line = Console.ReadLine(); A = Boolean.Parse(line);

            Console.Write(" B = "); line = Console.ReadLine(); B = Boolean.Parse(line);

            Console.Write(" C = "); line = Console.ReadLine(); C = Boolean.Parse(line);

            Console.Write(" Имя = "); FirstName = Console.ReadLine();

            Console.Write(" Фамилия = "); Surname = Console.ReadLine();

        }

        // функция расчета арифметического выражения

        static double ArithFunc(double x, double a, double b)

{

Console.WriteLine("\n ***** Работа функции (ArithFunc) *****");

      // вычисление числителя арифметического выражения

      double Numerator=Math.Atan(a)*Math.Pow(a, 1/3.0)*Math.PI/Math.Exp(x)+ Math.Pow(a, 2)-4.5*Math.Pow(10.0,2.5)*Math.Sqrt(x)*Math.Asin(a);

// вычисление знаменателя арифметического выражения

      double Denominator=Math.Tan(2.7e-3)-Math.Acos(a)*Math.Log(x)+ Math.Pow(a, x)+Math.Abs(Math.Sin((double)b))-Math.Log10(a);

// вычисление  и возврат результата арифметического выражения

      return Numerator / Denominator;

}

        // функция расчета логического выражения

        static bool BoolFunc(double X, double Y, bool A, bool B, bool C)

        {

            bool Z;

            Console.WriteLine(" ***** Работа функции (BoolFunc) *****");

            Z = A&&!C||(X<4.2)&&(X>=3.5)||!B&&(X>Y);

            return Z;

        }

        // функция расчета строкового выражения

        static int CharFunc(string FirstName, string Surname, ref string FullName,

        out int iFirstName, out int iSurname)

        {

            Console.WriteLine(" ***** Работа функции (CharFunc) *****");

            iFirstName = FirstName.Length;

            iSurname = Surname.Length;

            FullName = FirstName + " " + Surname;

            int iFullName = FullName.Length;

            return iFullName;

        }

        // функция вывода результатов расчетов на экран консоли

        static void WriteData(double y, bool Z, string FullName, int iFullName,

        int iFirstName, int iSurname)

        {

            Console.WriteLine("\n ***** Результаты расчета (WriteData) *****:\n");

            Console.WriteLine(" арифметическое выражение: y={0}",y);

            Console.WriteLine(" логическое выражение: Z={0}", Z);

            Console.WriteLine(" строковое выражение: FullName={0}", FullName);

            Console.WriteLine(" количество символов в полном имени={0}", iFullName);

            Console.WriteLine(" количество символов в имени={0}", iFirstName);

            Console.WriteLine(" количество символов в фамилии={0}", iSurname);

        }

    }

}

Результат выполнения: 

Похожие материалы

Информация о работе