Что значит линейная программа

Линейной называется программа, являющаяся записью линейного алгоритма. В такой программе все операторы выполняются строго последовательно, т.е. после выполнения каждого из них (кроме END) ЭВМ автоматически переходит к выполнению следующего за ним оператора.

Составление простейших программ

Простейшими будем называть линейные программы, не содержащие массивов. Составление таких программ требует знания ранее рассмотренных операторов, понимания их соответствия блокам схемы алгоритма и производится согласно такому несложному правилу:

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

для блока Начало — оператор REM с названием программы;

для блока Ввод — оператор ввода;

для блока Процесс — оператор присваивания;

для блока Вывод — оператор вывода;

для блока Останов — оператор END.

В этом все правило!

Теперь приведем примеры конкретных программ рассматриваемого вида.

ВПР по биологии 6 класс (Линейная программа)

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

Переставить значения величин А и В.

Решение задач 12.2 и 12.3. Эти задачи рассматривались в главе 10, поэтому на рис. 12.2 приведены без пояснений схема алгоритма и программа задачи 10.2, а на рис. 12.3 — то же для задачи 10.3.

На рис. 12.2 и 12.3 стрелками показано соответствие операторов программы блокам схемы алгоритма.

Приведем программы решения еще двух задач. Программа задачи 12.1 иллюстрирует использование величин различного типа. Программа задачи 12.2 демонстрирует организацию вывода данных на печатающее устройство.

Рис. 12.3

Рис. 12.2 Рис. 12.3

Вычислить значения У и Z по формулам:

где В и В — целые величины.

Исходные данные: Э%, В%, С, X, А(а).

Результат: Y,Z%.

Порядок выполнения операций здесь очевиден, поэтому сразу напишем программу:

  • 10 REM ЗАДАЧА 1
  • 20 PRINT «ВВЕСТИ D%, В%, С, X, А»
  • 30 INPUT D%,В%, С, X, А 40 R$=»HBAH0B, 10А КЛ»
  • 50 Z%=2*D%—3*В%
  • 60 Y=(3*ABS(X)+С:(1/3)+SIN(A)/COS(А))*Z%
  • 70 PRINT «Z%=»;Z%; «Y advconts adv3»>
  • 20 REM ВЫВОД НА ПЕЧАТЬ 30 PRINT «ВВЕСТИ А, В»
  • 40 INPUT А, В 50 У=А Л 2+В Л 2
  • 60 LPRINT «ДАННЫЕ:»,» А=»;А;» В РЕЗУЛЬТАТ:»,» Y /htm/img/4/10236/324.png» width=»273″ height=»92″ decoding=»async» loading=»lazy»/> т.е. содержат три строки и четыре столбца. Составление линейных программ с массивами. Прежде всего отметим особенности работы с массивами в программе. 1. Элементы массивов получают значения с помощью операторов ввода или присваивания как простые переменные. При вводе (выводе) массивов в операторах ввода (вывода) перечисляются имена всех вводимых (выводимых) элементов массива. Пример: программа ввода и вывода массива Р (1:3) может иметь такой вид:
  • 20 DIM Р(3)
  • 30 INPUT Р(1), Р(2), Р (3)
  • 40 PRINT Р(1), Р(2), Р(3)
  • 50 END
  • 2. Все массивы можно разделить на два вида:
  • • массивы постоянного размера (например, Р( 1:7), В(1:4, 1:8)];
  • • массивы переменного размера [например, А(1: С(1 :т, 1: d). В главах 8 и 9 мы использовали оба вида, не делая различий между ними.

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

PascalABC Урок №1 для чайников. Линейная программа.

Следует только помнить: переменные — размеры массивов должны быть определены до обращения к оператору DIM.

10 INPUT М 20 DIM Х(М)

Линейные программы с массивами составляются в соответствии с рассмотренным ранее правилом составления простейших программ, которое можно дополнить одним пунктом — «после оператора REM следует записать в программе оператор DIM». Кроме того, необходимо учитывать только что изложенные сведения о работе с массивами.

Читайте также:
Как с диска устанавливать программы на мак

Теперь покажем построение рассматриваемых программ на конкретных примерах. Для начала вернемся к задаче 8.5. Схема алгоритма ее приведена на рис. 10.11. Заменив каждый блок этой схемы соответствующим оператором согласно правилу, приведенному в 12.2, и добавив оператор DIM, получим программу, приведенную ниже. После ознакомления с этой программой рекомендуем читателю самому составить программу решения задачи 10.7 и сравнить ее с приведенной ниже:

  • 10 REM СУММА
  • 20 DIM В(3, 3), S (2)
  • 30 PRINT «ВВЕСТИ МАТР. В(3, 3)»
  • 4 0 INPUT В(1, 1), В(1, 2), В(1, 3)
  • 50 INPUT В (2, 1), В (2, 2), В(2, 3)
  • 60 INPUT В(3, 1), В(3, 2), В(3, 3)
  • 70 S(l) =В (1, 1)+В(1, 2 ) +В (1, 3)
  • 80 S (2) =В (1, 3) +В (2, 3)+В(3, 3)
  • 90 PRINT «S(1)=»; S (1); «S(2) ВВЕСТИ МАССИВ В (4) «
  • 40 INPUT В(1), В(2),
  • 50 D=B(1)
  • 60 В(1)=В(2)
  • 70 В(2)=В(3)
  • 80 В(3)=В (4)
  • 90 В(4)=D
  • 100 PRINT «МАССИВ В=(«;
  • 110 PRINT В(1); В(2);
  • 1. Какой оператор в Бейсике указывает тип и размеры массива?
  • 2. Каково обозначение элементов массива в Бейсике? Каково наименьшее значение индекса элемента массива?

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

В приведенных далее задачах составить схему алгоритма и программу. 1. Вычислить

  • 2. Вычислить среднее арифметическое переменных В, Си И.
  • 3. Рабочие Иванов и Петров изготовили за смену А и В деталей соответственно, перевыполнив норму. Определить процент перевыполнения нормы (норма — С деталей в смену).
  • 4. Определить разницу в возрасте невест для двух братьев Пети и Димы. Их возраст а и Ь соответственно. Возраст невесты определяется по формуле

где (7 — возраст жениха.

5. Вычислить значение у:

где

Примем кф 0; г,Ф 0.

  • 6. Вычислить объем и площадь поверхности цилиндра диаметром О и высотой Н.
  • 7. Вычислить стоимость мебельного гарнитура, содержащего четыре стула, два кресла и один стол. Стоимость изделий соответственно А, В и С руб.
  • 8. Определить среднее арифметическое элементов массива С(1:5).
  • 9. Определить произведение сумм элементов каждой строки матрицы Р(1:2, 1:3).
  • 10. Переставить соответствующие элементы первой и второй строк матрицы А( 1:2, 1:2).
  • 11. Переставить элементы массива Я(1: 6): 1-й элемент и 6-й, 2-й и 5-й, 3-й и 4-й.

Источник: bstudy.net

Линейные программы

Линейной называется программа, все операторы которой выполняются последовательно, в том порядке, в котором они записаны. Это самый простой вид программ.

Переменная — это величина, которая во время работы программы может —

изменять свое значение. Все переменные, используемые в программе, должны быть описаны в разделе описания переменных, начинающемся со служебного слова var.

Для каждой переменной задается ее имя и тип, например:

var number : integer; х, у : real; option : char;

Имя переменной определяет место в памяти, по которому находится значение переменной. Имя дает программист. Оно должно отражать смысл хранимой величины и быть легко распознаваемым.

Тип переменных выбирается исходя из диапазона и требуемой точности представления данных.

При объявлении можно присвоить переменной некоторое начальное значение, т.е. инициализировать ее. Под инициализацией понимается задание значения, выполняемое до начала работы программы. Инициализированные переменные описываются после ключевого слова const:

const number : integer = 100; x : real = 0.02; option : char = ‘ю’;

Читайте также:
Написать программу на паскале для нахождения значения функции

По умолчанию все переменные, описанные в главной программе, обнуляются.

Выражение — это правило вычисления значения. В выражении участвуют —

операнды, объединенные знаками операций. Операндами выражения могут быть константы, переменные и вызовы функций. Операции выполняются в определенном порядке в соответствии с приоритетами, как и в математике. Для изменения порядка выполнения операций используются круглые скобки, уровень их вложенности практически не ограничен.

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

Далее приведены операции ПАСКАЛЯ, упорядоченные по убыванию приоритетов.

Функции, используемые в выражении, вычисляются в первую

Примеры выражений:

t + sin (х)/2 * х —результат имеет вещественный тип; а 0) and (у Любая программа при вводе исходных — данных и выводе результатов взаимодействует с внешними устройствами. Совокупность стандартных устройств ввода и вывода, т.е. клавиатуры и экрана дисплея, называется консолью.

Ввод с клавиатуры. Для ввода с клавиатуры определены следующие процедуры: read и readln: read (список); readln [(список)];

В скобках указывается список имен переменных через запятую. Квадратные скобки указывают на то, что список может отсутствовать. Например:

read (a, b, с); readln (у); readln;

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

Ввод значения каждой переменной выполняется так:

  • ? значение переменной выделяется как группа символов, расположенных между разделителями;
  • ? эти символы преобразуются во внутреннюю форму представления, соответствующую типу переменной;
  • ? значение записывается в ячейку памяти, определяемую именем переменной.

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

Особенность ввода символов и строк состоит в том, что пробельные символы в них ничем не отличаются от всех остальных, поэтому разделителями являться не могут.

Вывод на экран. При выводе выполняется обратное преобразование: из внутреннего представления в символы, выводимые на экран. Для этого в языке определены стандартные процедуры write и writeln: write (список); writeln [(список)];

Процедура write выводит указанные в списке величины на экран, а процедура writeln вдобавок к этому еще и переводит курсор на следующую строку. Процедура writeln без параметров просто переводит курсор на следующую строку.

Выводить можно величины логических, целых, вещественных, символьного и строкового типов. В списке могут присутствовать не только имена переменных, но и выражения, а также их частный случай — константы. Кроме того, для каждого выводимого значения можно задавать его формат, например: writeln (а:4, Ь:6:2);

После имени переменной а через двоеточие указано количество отводимых под нее позиций, внутри которых значение выравнивается по правому краю. Для b указано две форматные спецификации, означающие, что под эту переменную отводится всего шесть позиций, причем две из них — под дробную часть.

Источник: studme.org

7 семестр / Учебники / Все лекции С# / Все лекции С# / Лекция 4. Линейные программы, класс Math

Линейной называется программа, все операторы которой выполняются последовательно в том порядке, в котором они записаны. Простейшим примером линейной программы является программа расчета по заданной формуле. Она состоит из трех этапов: ввод исходных данных, вычисление по формуле и вывод результатов.

Простейший ФОРМАТИРОВАННЫЙ ввод-вывод

Любая программа при вводе исходных данных и выводе результатов взаимодействует с внешними устройствами. Совокупность стандартных устройств ввода и вывода, то есть клавиатуры и экрана, называется консолью.

Читайте также:
Diagzone pro как пользоваться программой

В языке С#, как и во многих других, нет операторов ввода и вывода. Вместо них для обмена с внешними устройствами применяются стандартные объекты. Для работы с консолью в С# применяется класс Console, определенный в пространстве имен System. Методы этого класса Write и WriteLine уже использовались в программах.

decimal d = 600m;

Console.WriteLine( «i justify»> Console.WriteLine( «y = n d = «, y. d );

Console.WriteLine( «s justify»> Преобразование в строку определено во всех стандартных классах C# — для этого служит метод ToString(). Вызывается он явным способом:

Console.WriteLine( «i justify»> В строке :

Console.WriteLine( «y = n d = «, y. d );

применяется перегруженный метод WriteLine(), имеющий параметры в фигурных скобках, а также управляющие последовательности. Параметры нумеруются с нуля, перед выводом они заменяются значениями переменных в списке вывода. Например, нулевой параметр – y, первый – d и т.д.

Ввод с клавиатуры. Преобразование строк в числа

В классе Console определены методы ввода строки или символа, но НЕТ методов, которые позволяют считывать с клавиатуры числа. Ввод чисел происходит в 2 этапа:

  1. Числа вводятся с клавиатуры как строковые константы
  2. Выполняется преобразование из строки в переменную соответствующего типа.

Преобразование можно выполнить, используя:

  • Класс Convert, имеющий методы преобразования в любой стандартный тип C# — Convert.ToInt32(строковая константа), Convert.ToDouble(строковая константа) и т.д.
  • Метод Parse(строковая константа) – метод, существующий у любого стандартного типа – double.Parse(s)

Пример ввода данных с клавиатуры using System; namespace ConsoleApplicationl < class Classl < static void Main() < //———————————— Console.WriteLine(“Введите строку”); string s=Console.ReadLine(); Console.WriteLine(“s=”+s); //———————————————- Console.WriteLine(“Введите символ”); char c=(char) Console.Read(); Console.ReadLine(); //считывание остатка строки, нет очистки буфера Console.WriteLine(“c=”+c); //———————————————- string buf; Console.WriteLine(“Введите целое число”); buf=Console.ReadLine(); int i=Convert.ToInt32(buf); Console.WriteLine(i); //———————————————— Console.WriteLine(“Введите вещественное число”); buf=Console.ReadLine(); double x=Convert.ToDouble(buf); Console.WriteLine(x); //———————————————— Console.WriteLine(“Введите вещественное число”); buf=Console.ReadLine(); double y=double.Parse(buf); Console.WriteLine(y); //———————————————— Console.WriteLine(“Введите вещественное число”); buf=Console.ReadLine(); decimal z=decimal.Parse(buf); Console.WriteLine(z);> > >Математические функции – классMath Все математические функции реализованы как методы класса Math, основные из которых представлены в таблице 4.1 Таблица 4.1 – Основные поля и методы класса Math

Имя метода Описание Пояснения
Abs Модуль |x|, записывается как Abs(x)
Acos Арккосинус Acos(double x), угол задается в радианах
Asin Арксинус Asin(double x)
Atan Арктангенс Atan(double x)
Atan2 Арктангенс Atan2(double x,double y) –угол, тангенс которого есть результат деления y на х
BigMul Произведение BigMul(int x,int y)
Celling Округление до большего целого Celling(double x)
Cos Косинус Cos(double x)
Cosh Гиперболический косинус Cosh(double x)
DivRem Деление и остаток DivRem(x,y,rem)
E Число е 2,71828182845905
Exp Экспонента Exp(x)
Floor Округление до меньшего целого Floor(double x)
IEEERemainder Остаток от деления IEEERemainder(double x, double y)
Log Натуральный логарифм Log(x)
Log10 Десятичный логарифм Log10(x)
Max Максимум из 2-х чисел Max(x,y)

Продолжение таблицы 4.1

Имя метода Описание Пояснения
Min Минимум из 2-х чисел Min(x,y)
PI Значение числа пи 3,14159265358979
Pow Возведение в степень Pow(x,y) – x в степени y
Round Округление Round(3.1)=3 Round(3.8)=4
Sign Знак числа
Sin Синус Sin(double x)
Sinh Гиперболический синус Sinh(double x)
Sqrt Квадратный корень Sqrt(x)
Tan Тангенс Tan(double x)
Tanh Гиперболический тангенс Tanh(double x)

Пример линейной программы расчета по заданной формулеusing System; namespace ConsoleApplicationl < class Classl < static void Main() < string buf; Console.WriteLine(“Введите x”); buf=Console.ReadLine(); double x=Convert.ToDouble(buf); Console.WriteLine(“Введите alfa”); buf=Console.ReadLine(); double a=double.Parse(buf); double y=Math.Sqrt(Math.PI*x)- Math.Exp(0.2*Math.Sqrt(a))+ 2*Math.Tan(2*a)+ 1.6e3*Math.Log10(Math.Pow(x,2)); Console.WriteLine(“Для х= и alfa =”, x,a); Console.WriteLine(“Результат =” +y); >>>

Источник: studfile.net

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru