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




Задача1. Вычислить на ПЭВМ значения функции:

где k=1.2, a=2, b=4, xÎ0…6  

Обратим внимание, что функция y не определена в диапазоне 2 < x ≤ 4 {x > 2 & x ≤ 4}. В этой ситуации программа должна обеспечить вывод соответствующего сообщения, например "функция не определена". Таким образом, фактически имеем три диапазона изменения x:

 

функция

sin(x) не определена k·ln(x)

0 2 4 6 x

 

Примем диапазон изменения x от 0 до 6, что позволит протестировать программу по всем трем условиям. Поскольку в задаче три условия, число блоков «решение» в алгоритме должно быть два (на единицу меньше числа условий). Блок-схема одного из вариантов алгоритма решения задачи (рис.3.1) и соответствующая программа будут иметь вид:

 

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

 

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

double x, y, k = 1.2;

Console.Write("Введите х ");

x = Convert.ToDouble(Console.ReadLine());

/*преобразует вводимое с клавиатуры число в виде строки в вещественный тип данных*/

Console.WriteLine();

if (x <= 2 & x > 0)

{

y = Math.Sin(x);

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

}

else

if (x <= 6 & x > 4)

{

y = k * Math.Log(x);

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

}

else Console.WriteLine("x={0,3:f} Func No",x);

Console.WriteLine();

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

Console.ReadKey();

}

}

} Результаты решения задачи 1:

 

Методы ввода данных

Вводить данные можно программно, присваивая переменным или константам значения в соответствии с объявленным ранее типом или непосредственно с клавиатуры при исполнении программы. Для этого используются следующие методы:

x = Convert.ToDouble(Console.ReadLine()); //вещественный тип

d = Convert.ToInt16(Console.ReadLine()); //целый тип

z = Convert.ToInt32(Console.ReadLine()); //целый тип

ch=Convert.ToChar(Console.ReadLine()); //символьный тип

Методы содержат процедуру чтения с последующим образованием новой строки (ReadLine()) и функцию преобразования вводимых с клавиатуры данных, воспринимаемых в виде строки в тип данных, соответствующих объявленному диапазону.

Задача 2. Программа принимает с клавиатуры номер дня недели и в зависимости от его значения выводит на дисплей текстовый комментарий: учеба, самоподготовка, отдых.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

 

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

int d;

Console.Write("Введите день недели ");

d= Convert.ToInt16(Console.ReadLine());

//преобразует вводимое с клавиатуры число в виде строки в целый тип данных

switch (d)

{

case 1: Console.WriteLine("1 - учёба"); break;

case 2: Console.WriteLine("2 - учёба "); break;

case 3: Console.WriteLine("3 - учёба "); break;

case 4: Console.WriteLine("4 - учёба "); break;

case 5: Console.WriteLine("5 - учёба "); break;

case 6: Console.WriteLine("6 - самоподготовка"); break;

case 7: Console.WriteLine("7 - выходной день"); break;

default: Console.WriteLine("Неверный ввод данных. Введите 1<=d<=7"); break;

}

Console.ReadKey();

 
 


}

}

} Результаты работы программы

Рис. 3.2. Блок-схема алгоритма задачи 2

Задания на дом для самостоятельного решения.

 

Составить блок-схему и написать программу, вычисляющую значения переменных, заданных по варианту, приведенному в таблице 3.2

Таблица 3.2

N Задачи
  Даны 2 разных по значению числа (a и b). Меньшее из этих двух чисел заменить их полусуммой, а большее - их удвоенным произведением.
  Даны х, у. Если х и у отрицательны, то их значения заменить абсолютной величиной; если отрицательно только одно их них, то оба значения увеличить на 0.5; если оба значения неотрицательны, то увеличить их в 10 раз.
  Даны 2 разных по значению числа (a и b). Большее из этих двух чисел заменить их суммой, а меньшее - их утроенным произведением.
  Даны х, у. Если х и у отрицательны, то их значения возвести в квадрат; если отрицательно только одно их них, то оба значения увеличить вдвое; если оба значения неотрицательны, то уменьшить их в 5 раз.
  Даны 2 разных по значению числа (a и b). Меньшее из этих двух чисел заменить их разностью, а большее - их произведением.
  Даны х, у. Если х и у отрицательны, то их значения возвести в куб; если отрицательно только одно их них, то оба значения увеличить вдвое; если оба значения неотрицательны, то уменьшить их в 2 раза.
  Даны 2 разных по значению числа (a и b). Большее из этих двух чисел заменить его квадратом, а меньшее – полусуммой заданных чисел.
  Даны х, у. Если х и у положительные, то их значения уменьшить втрое; если отрицательно только одно их них, то оба значения уменьшить на 0.5; если оба значения отрицательны, то заменить их абсолютной величиной.
  Даны 2 разных по значению числа (a и b). Меньшее из этих двух чисел заменить их произведением, а большее – в два раза уменьшить.
  Даны х, у. Если х и у положительные, то их значения увеличить на 1,5; если отрицательно только одно их них, то оба значения уменьшить вдсое; если оба значения отрицательны, то заменить их абсолютной величиной.
  Даны 2 разных по значению числа (a и b). Большее из этих двух чисел заменить их полусуммой, а меньшее – его квадратом.
  Даны х, у. Если х и у положительные, то их значения увеличить вдвое; если отрицательно только одно их них, то оба значения уменьшить на 0,5; если оба значения отрицательны, то возвести их в квадрат.

 

Составить блок-схему и написать программу, вычисляющую функцию, приведенную по варианту в таблице 3.2, в заданном диапазоне с шагом dx,. Задачу решить с использованием операторов условного и безусловного переходов.

 

 

Таблица 3.3

 

N Функции и условия Диапазон, шаг dx
  x = [-20; 20], dx=2
  x = [-10; 20], dx=3
3 x = [-30; 10], dx=4
  x = [-20; 20], dx=2
  x = [-10; 30], dx=3
  x = [-30; 30], dx=4
  x = [-10; 20], dx=2
  x = [-10; 20], dx=3
  x = [-20; 50], dx=4  
  x = [-20; 10], dx=2
  x = [-10; 20], dx=3
  x = [-20; 20], dx=2

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



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-04-27 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: