Мегаобучалка Главная | О нас | Обратная связь


Программирование алгоритмов линейной структуры




 

Подготовка к работе

1. По указанной литературе изучить:

– запись констант, переменных, функций на языке C#;

– правила записи арифметических выражений на языке C#;

– арифметические операторы присваивания;

– организацию простейшего ввода-вывода данных.

2. Разработать алгоритмы решения задач в соответствии с заданием.

3. Составить программы решения задач.

 

Контрольные вопросы

1. Что включает в себя алфавит C#?

2. Перечислите операции, производимые в C#?

3. Что понимается под идентификаторами и, каковы требования к ним?

4. Какие типы данных используются в C#?

5. Охарактеризуйте целые типы данных в C#?

6. Охарактеризуйте вещественные типы данных в C#?

7. Дать понятие логического, символьного и строкового типа данных.

8. Какова структура программы на языке C# под консольным приложением? Зачем отдельные слова программы отображаются разным цветом?

9. Где и как описываются константы, переменные и типы данных?

10. Перечислите основные стандартные функции в C#?

11. Какова последовательность действий при выполнении оператора присвоения?

12. Перечислите приоритетность выполнения операций в выражениях.

13. Методы вывода Console.Write() и Console.WriteLine(). Пояснить на примерах форматированный вывод данных.

14. Как организовать пропуск одной и более строк при выводе данных?

15. Как сделать, чтобы окно пользователя открывалось для получения конечного результата?

 

Задание и порядок выполнения работы

1. Задача 1. Создать проект – консольное приложение, которое по заданным расчетным формулам и наборам исходных данных, указанных в табл. 2.1, вычисляет значения соответствующих переменных. На экран вывести результаты расчетов, сопровождая их вывод именами выводимых переменных. Решение задачи должно состоять из блок-схемы алгоритма и реализующей его программы, снабженной пояснениями.

 

Таблица 2.1

 N Расчетные формулы Данные
1
2
3
4
5
6
7
8
9
10
11
12

2. Составить блок-схему решения поставленной задачи.

3. Написать и ввести программу в редактор кода под консольное приложение (Файл\ Создать проект \Консольное приложение \ОК), сохранить его в папке Р21 под именем Z1 (D:\ Temp\...\ P2\Р21\ Z1. scproj).

4. Запустить проект, используя команду Отладка\Начать отладку.

5. Проанализировать полученный результат на соответствие поставленной задаче.

6. Задача 2. Создать консольное приложение, в котором в диалоговом режиме ИСР Visual Studio 2010 Express запрашивает у Вас имя пользователя и номер группы обучения, а Вы отвечаете своими реквизитами. Например:

Ваше имя  Михаил

Ваша группа МТС-01

После выполнения программы результаты в окне пользователя должны быть выведены в следующем виде:

Ваше имя  Михаил

Ваша группа МТС-01

Мое имя    Михаил

Моя группа ПИЭ-90

7. Добавить строки кода, в которых программа Вас приветствует (например, Привет Михаил!) и отмечает, что группа (например, МТС-01) замечательная.

8. Ввести программу в редактор кода под консольное приложение, сохранить его в папке Р2_2 под именем Z2 (D:\Temp\ …\Р2\P22\Z2.scproj), запустить на исполнение.

9. Проанализировать результат на соответствие поставленной задаче.

10. Cкопировать папки P21 и P22 с их содержимым на свою Flash-память.

11. Завершить работу и подготовить отчет, в котором отразить условие задачи, алгоритмическую блок-схему, код проекта и результаты решения по каждой задаче. 

 

Методические указания по выполнению задания

Пример выполнения задачи 1. Вычислить значение переменных y и p, используя расчетные формулы: ,

      где а = 0.59, z = -4.8, x = 2.1         

                                      

Величины a, z, x являются вещественными числами, их значения заранее определены условием задачи, поэтому их можно объявить в программе как константы типа double с присвоением им их заданных значений. Переменные y и p необходимо рассчитать, поэтому они с учетом значений входных данных объявляются как переменные того же типа double, но со стартовой нулевой инициализацией.

При написании выражения на языке C#, используются скобки(), операнды, операторы и стандартные функции. Для написания стандартной функции (табл. 2.2) используется класс платформ Math. Например, Math.Sin(x), Math.Pow(x,2), Math.Log(x+1).

Блок-схема алгоритма поставленной задачи приведена на рис. 2.1, а программа ее решения ниже:

using System;

namespace ConsoleApplication1

{

class Program

{

   static void Main(string[] args)

   {

       const double x = 2.1, a = 0.59, z = -4.8; 

       double y = 0, p = 0;

       y = a * Math.Pow(Math.Tan(x * x), 3) +

               Math.Sqrt(z * z / (a * a + x * x));

       p = Math.Log(a + x * x) + Math.Pow(Math.Sin(z / a), 2);

       Console.WriteLine("Результаты");

       Console.WriteLine();              

       Console.Write("y=");

       Console.WriteLine(y.ToString()); 

               //формат вывода по умолчанию

       Console.WriteLine();

       Console.WriteLine("p={0:E}",p);

               //экспоненциальный формат вывода переменной

       Console.WriteLine();

       Console.WriteLine("y={0,5:f} p={1,5:f}", y, p);

               //фиксированный формат вывода переменных

       Console.WriteLine("Нажми клавишу Enter");

       Console.ReadKey();

   }

}

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

Замечания. В программе предусмотрен вывод вещественных переменных в разных форматах. В отдельной строке переменная y отображается в формате, установленном по умолчанию. Переменная p – в экспоненциальном формате. В одной строке переменные y и p представлены в формате, который отображает при выводе на печать 5 символов, 2 из которых отведены для дробной части (F).

Задача 2. В диалоговом режиме ввести свое Имя и группу и вывести результат на экран. Здесь используются строковые переменные n и g типа string и методы Write(), WriteLine().

using System;

...

using System.Text;

 

namespace ConsoleApplication1

{

class Program

{

   static void Main(string[] args)

   {

         string n = " ", g = " ";

       Console.WriteLine("Запрос");

       Console.Write("Ваше имя ");

       n=" Ирина";

       Console.WriteLine(n);

       Console.Write("Ваша группа ");

       g=" ПИЭ-01";

       Console.WriteLine(g);

       Console.WriteLine();

       Console.WriteLine("Ответ:");

       Console.WriteLine("Мое имя " + n);

       Console.WriteLine("Моя группа " + g);

       Console.WriteLine("Нажми клавишу Enter");

       Console.ReadKey();

   }

}

}

В приведенную программу добавить строки приветствия (например, Привет Ирина!) и поощрение группы (например, группа ПИЭ-01 замечательная!).

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

Основные стандартные функции приведены в табл. 2.2.

Таблица 2.2

Вызов функции Назначение Вызов функции Назначение
Abs(x) Абсолютное значение Log10(x) Логарифм от x по основан.10
Ceiling(x) Округление вверх Max(x,y) Максимальное из двух
Cos(x) Косинус Min(x,y) Минимальное из двух
DivRem(x,y) Остаток от x/y, числа целые Round(x) Округление до ближайшего целого
Exp(x) Экспонента = ex Pow(x,y) Возводит x в любую степень y
Floor(x) Округление вниз Sin(x) Синус
IEEERemainder(x,y) Остаток от x/y, числа вещественные Sqrt(x) Квадратный корень
Log(x) Натуральный логарифм Tan(x) Тангенс

    Приоритетность операций в выражениях:

1. Вычисления в ( )                             // Сначала вычисления в самых внутренних ()

2. ! унарные + / -                             // Отрицание операнда и добавление унарного +/-

3. *     /                                     // Операции типа умножения * /

4. +     -                                     // Операции типа сложения + - 

5. <     > <= >= == ! =   // Операции типа сравнения

6. &                                                     // Операция логического умножения И

7. |                                                   // Операции логического сложения ИЛИ

В консольном приложении используется одно окно. Вывод результата осуществляется методами Write, WriteLine, а чтение результата – ReadKey().

Console.Write(" ") – вывод в строку текстовой информации. Следующий вывод будет продолжен в этой же строке.

Console.Write(" " + z) – вывод текстовой строки и значения переменной z.

Console.WriteLine(y,z) – вывод значений переменных y и z в формате по умолчанию, но по завершении осуществляется переход к следующей строке.

Console.WriteLine("{0,8:E}", x) – форматный вывод значения x. Где 0 – номер вывода переменной, 8 – число позиций для отображения числа x, E, ображениютображению числаачения переменной  – экспоненциальный формат данных (6 символов после запятой в отображении числа);

Console.WriteLine ("{0,6:F}{1,6:F}", x, y) – вывод двух значений: сначала x (0), а затем y (1), с шести позиционным отображением чисел и двумя (F) символами после запятой.

Console.WriteLine() – пропуск одной строки при выводе.

Console.ReadKey() – чтение результата (пауза).






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



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (83)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.007 сек.)