Составить программу для вычисления и печати значений функции

Содержание

Лабораторный практикум по программированию (Бейсик)

Сборник лабораторных работ по языку программирования Basic.

Лабораторная работа №1 «Команда ввода»

ПРИМЕЧАНИЕ: Результаты работы программ и ответы на вопросы записывать в тетрадь.

Задача 1.

Записать в ОП программу:

PRINT «Добрый день»
PRINT « Вычислить произведение чисел А, Х»
А = 5
Х = 4
В = А * Х
PRINT A, X, B

Исполнить программу. Что появилось на экране?

Задача 2.

Изменить последнюю строку:

Исполнить программу. Что появилось на экране? Чем отличается результат от предыдущего?

Задача 3.

Удалить последнюю строку, дописать в программу строки:

Исполнить программу. Что на экране?

Изменить в программе три последние строки:

Исполнить программу. Что на экране?

Задача 4.

Удалить три последние строки.

Исполнить программу. Что на экране?

Контрольное задание к лабораторной работе.

Написать программу вычисления площади трапеции для а = 2.3; в =4.5; h = 5. Вывести на экран исходные данные и результат.

Формулы Excel – все особенности, тонкости и трюки в одном видео! — Функции Excel (2)

Лабораторная работа №2 «Ввод и редактирование линейных программ»

Цель: Научиться вводить линейные программы. Познакомиться со стандарной функцией INT.

1. Составить программу для подсчета значений функции: y=0.3X^2-1.25X^3+5.64X-8.3, при Х=0.5; -8,126; 0.0015.

После появления знака вопроса набрать первое значение Х и нажать [ENTER]. Записать результат в тетрадь и повторить вычисления для других значений Х.

2. Написать программу для нахождения значения выражения: Y=(AX^2+B)/(4-3C) ПРИ A=3; B=3; C=2; X=1.

3. Нахождение целой части от числа с помощью функции INT.

Выполнить программу, которая находит целую часть от деления выражения Y=(А+В)/А при А=15,3; В=0,485; А=112,443; В=18,024.

INPUT A,B
Y=(A+B)/A’вычисляет значение выражения
Z=INT(Y)’ находит целую часть
PRINT “Y=”;Y,”Z=”;Z’ выводит на экран значение выражения и целую часть от него.

4. Программа нахождения остатка от деления Y=N/М, N=15, M=4; N=1234, M=25

INPUT M,N
Z=N-INT(N/M)*M’ вычисление остатка от деления
PRINT “Z=”;Z

Самостоятельная работа.

1. Написать программу для вычисления значения функции и исполнить ее для указанных значений Х.

2. Написать программу для нахождения остатка от деления Y=1986/A.

Лабораторная работа №3 «Программы ветвления. Операторы IF … THEN … ELSE, GO TO»

Цель: Научиться вводить и редактировать разветвляющиеся программы.

1. Написать программу для нахождения значения функции при х=0 y= Ö x для х=-8.34; -0.158; 1.21; 625

2. Ввести программу для нахождения НОД чисел М и N. Исполнить ее для M=1000, N=625; M=1236312, N=9822.

10 INPUT M,N
20 LET X=M
30 LET Y=N
40 PRINT X,Y
50 IF X=Y THEN 110
60 IF X>Y THEN 90
70 LET Y=Y-X
80 GOTO 50
90 LET X=X-Y
100 GOTO 50
110 PRINT “НОД ЧИСЕЛ M и N РАВЕН”;X
120 END

Таблица значений функции и ее график. 7 класс.

3. Ввести программу решения квадратного уравнения и исполнить её для следующих уравнений: 1125х^2-45x-324=0; 502x^2-38.5x+12/125=0; 16x^2-256x+1024=0.

10 PRINT “РЕШАЕМ УРАВНЕНИЕ AX^2+BX+C=0”
20 INPUT A,B,C
30 D=B^2-4*A*C
40 IF D>0 THEN 100
50 IF D=0 THEN 70
60 PRINT “Нет решения”
70 X=-B/(2*A)
80 PRINT “X1=X2=”;X
90 GOTO 130
100 X1=(-B-SQR(D))/(2*A)
110 X2=(-B+SQR(D))/(2*A)
120 PRINT “X1=”;X1,”X2=”;X2
130 END

4. НАПИСАТЬ ПРОГРАММУ ДЛЯ РЕШЕНИЯ ЛИНЕЙНОГО УРАВНЕНИЯ АХ+В=С, ПРИМЕРЫ.

Лабораторная работа №4 «Ввод и редактирование программ, содержащих циклы»

Цель: Научить вводить редактировать и составлять программы, содержащие циклы.

1. Вывести на экран дисплея значения функции Y=0.3X^3-4.15X^2-0.01X +2.25 для Х от –5 до 5

2. Ввести изменения в предыдущую программу, чтобы значения функции вычислялись с шагом 0.5. для решения этой задачи нужно изменить только первую строчку.

Читайте также:
После запуска программа закрывается

3. Вывести на экран таблицу умножения в виде 2*3=6

Для решения этой задачи будем использовать 2 цикла: один цикл по первому множителю, другой второму. Организуем 2 цикла, где в первом цикле первый множитель будет меняться от 1 до 5, второй от 1 до 9. Во втором цикле первый множитель будет меняться от 6 до 10, а второй также, от 1 до 9.

FOR J=1 TO 9
FOR I=1 TO 5
PRINT “I*J=”;I*J,
NEXT I
NEXT J
PRINT
FOR J=1 TO 9
FOR I=6 TO 10
PRINT “ ”I” “*”J”=”;I*J
NEXT I
NEXT J

4. Генерация случайных чисел.

Функция RND(1) генерирует случайное число от 0 до 1.

После запуска на решение ЭВМ выдаст значение А>0, но A

5. Получите на экране 10 случайных чисел от 0 до 15. Это значит, что число не должно быть больше 15 и меньше 1. Формула получения случайных чисел на интервале (В-А)* RND(1)+А. Добавим еще условие: числа должны быть целыми. Для этого используется функция INT.

Самостоятельная работа

Написать программу для получения 20 случайных чисел от 10 до 50.

ЛАБОРАТОРНАЯ РАБОТА № 5 «ЛИНЕЙНЫЕ МАССИВЫ (ЧАСТЬ 1)»

Цель: Научиться составлять простейшие программы по обработке линейных массивов.

Линейный массив- это линейная таблица, где каждому номеру соответствует свой элемент. Пример массивов: таблица квадратов, кубов чисел, таблица измерения температуры и т. д. Линейный массив обозначается именем (буквой) и номером последнего элемента. А(5)- линейный массив из 6 элементов(0,1,2,3,4,5). Оператор DIM резервирует в памяти ЭВМ место для массива.

Задача 1: Пусть дана таблица:

Где первая строка- номера элементов, вторая- их значений. Ввести в память ЭВМ значения элементов массива и вывести на экран в виде А(0)=2, А(1)=4, и т. д.

Задача 2: Дополнить программу так, чтобы найти сумму элементов массива.

Задача 3. Дополнить программу так, чтобы подсчитать количество отрицательных элементов в массиве.

Самостоятельная работа.

  1. Написать программу заполнения и вывода на экран таблицы квадратов от 1 до 40.
  2. Написать и исполнить программу заполнения массива из 20 элементов по формуле Y=0.2X^2-3X+0.1 и подсчета суммы положительных элементов.

ЛАБОРАТОРНАЯ РАБОТА № 6 «ЛИНЕЙНЫЕ МАССИВЫ (ЧАСТЬ 2)»

Цель: Продолжить изучение программ по обработке массивов.

Задача 4: Составить программу для заполнения таблицы кубов и вывода ее на экран дисплея.

Задача 5: Элементы массива вычисляются по формуле Y=X^2-X-2, где Х- номер элемента, а Y- его значение. Написать программу, которая:

  • Напечатает на экране первые 15 элементов;
  • Подсчитает их сумму;
  • Подсчитает количество отрицательных элементов;
  • Обнуляет значения суммы и счетчика отрицательных элементов;
  • Цикл подсчета значений элементов и выход их на экран;
  • К предыдущей сумме прибавляет значение следующего элемента;
  • Проверяет, будет ли он отрицательным. Если да, то увеличивает значение счетчика на 1.

DIM A(15)
S=0
K=0
FOR X=1 TO 15
A(X)=X^2-X-2
PRINT A(X);
S=S+A(X)
NEXT X
PRINT “СУММА ЭЛЕМЕНТОВ МАССИВА S=”; S
FOR X=1 TO 15
IF A(X) NEXT X
PRINT “КОЛИЧЕСТВО ОТРИЦАТЕЛЬНЫХ ЭЛЕМЕНТОВ К=”; K
END

Ввод и редактирование программ.

Задача 1: Элементы массива А(20) заполняются по формуле A(I)=21-I^2+4. Написать программу, которая находит минимальный элемент в этом массиве и, если он не один, то их количество и номера.

DIM A(20)
FOR I=1 TO 20
A(I)=21-I^2+4
PRINT “A(“I”)=”; A(I)
NEXT I
MIN=A(1)
K=0
FOR I=2 TO 20
IF MIN>A(I) THEN MIN=A(I)
NEXT I
PRINT “MIN=”; MIN
FOR I=1 TO 20
IF A(I)=MIN THEN K=K+1
IF A(I)=MIN THEN PRINT “MIN=A(“I”)=”; MIN
NEXT I
PRINT “КОЛИЧЕСТВО МИНИМУМОВ К=”; K
END

Задача 2: Написать программу, которая будет сравнивать значения выражения I^2-1 и J^3-1 для целых значений I и J и будет находить при каких значениях I и J они будут равны.

DIM A(10), B(10)
FOR I=0 TO 10
A(I)=I^2-1
PRINT “A(“I”)=”;A(I)
NEXT I
FOR J=0 TO 10
B(J)=J^3-1
PRINT “B(“J”)=”;B(J)
NEXT J
FOR I=0 TO 10
FOR J=0 TO 10
IF A(I)=B(J) THEN PRINT “A(“I”)=B(“J”)=”;A(I)”=”B(J)
NEXT J
NEXT I
END

Самостоятельная работа.

Задача 1: Изменить программу к задаче так, чтобы были найдены значения I и J, при которых A(I)

Задача 2: Элементы массива заполняют по формуле х(х-3)(х^2-81). Написать и исполнить программу, находящую из первых 10 элементов значения х, при которых значения элементов равны 0.

ЛАБОРАТОРНАЯ РАБОТА № 7 «ДВУМЕРНЫЕ МАССИВЫ».

Цель: Научиться писать простейшие программы по обработке двумерных массивов.

Читайте также:
Какая программа в верту

Таблица, состоящая из n строк и m столбцов, называется прямоугольным массивом. Каждому элементу массива соответствует свой номер строки и номер столбца, причем на первом месте всегда стоит номер строки. А(3,6)- двумерный массив из 4 строк и 7 столбцов. Задавая массив, мы должны указать номер максимальной строки и максимального столбца, начать работу можем с любого номера, только указав его.

Рассмотрим двумерный массив А(3,5):

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

I- номер

Источник: www.metodichka.net

Составить программу для вычисления и печати значений функции

: 111

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

Составить программу для вычисления и печати значений функции y=2.71^-x*Sin(3.14*x/2) . Вычислить 8 значений функции на интервале от 0 до 2,5. Исходные данные задать в файле LAB2.TXT. Результат поместить в файл вывода с именем LAB2.RES. x=-1 y=-2,7.
Господа, нужна помощь.
Попытался сделать сам.

Но здесь исходные данные заданы в программе, а нужно чтобы были заданы в текстовом файле. Что добавить?

Последний раз редактировалось Kef1r; 05.12.2016 в 21:28 .

Форумчанин

: 213

using System; using System.Collections.Generic; using System.IO; namespace FunctionValue < static class Program < static ListresultValues = new List(); const string InputFileName = «lab2.txt», OutputtFileName = «lab2res.txt»; static int total = 8; static double[] bounds = < 0, 2.5 >; static double step = 0; static readonly string pathToInputFile = Path.Combine(Environment.CurrentDirectory, «..», «..» , InputFileName), pathToOutputFile = Path.Combine(Environment.CurrentDirectory, «..», «..», OutputtFileName) ; private static void CalculateFunctionValues(double lowBound, double highBound , double step) < double currValue = lowBound; while (currValue < highBound) < resultValues.Add(Math.Pow(Math.E, currValue) * Math.Sin(Math.PI*currValue/2) ); currValue += step; >> private static bool WriteOutput() < if (File.Exists(pathToOutputFile)) < using (StreamWriter sr = new StreamWriter(pathToOutputFile)) < foreach (var value in resultValues) < sr.Write(«t», value); > > return true; > else < Console.WriteLine(«Output file not found», pathToInputFile); return false; > > private static bool ReadInput() < if (File.Exists(pathToInputFile)) < using (StreamReader sr = new StreamReader(pathToInputFile)) < if (!Int32.TryParse(sr.ReadLine(), out total)) Console.WriteLine(«Number of value has not been found. Set default value «, total); bounds = Array.ConvertAll(sr.ReadLine().Split(‘ ‘), double.Parse); > return true; > else < Console.WriteLine(«Input file not found», pathToInputFile); return false; > > static void Main(string[] args) < if (!ReadInput()) return; step = (bounds[1] — bounds[0]) / total; CalculateFunctionValues(bounds[0], bounds[1], step); WriteOutput(); >> >

Последний раз редактировалось tools; 06.12.2016 в 16:45 .

Источник: www.programmersforum.ru

C++. Разработка программы вычисления выражения, реализованного отдельной функцией. Элемент управления PictureBox

Рассчитать значения x , определив и использовав соответствующую функцию:

Соображения

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

где a – некоторое число. В нашем случае a = 6, 13, 22.

Поэтому, целесообразно реализовать функцию, которая получает входным параметром переменную a и вычисляет данное выражение.

Выполнение

1. Запустить MS Visual Studio . Создать проект по шаблону Windows Forms Application

После загрузки MS Visual Studio нужно создать проект по шаблону Windows Forms Application . Подробный пример создания проекта по шаблону Windows Forms Application описывается в теме:

Следует напомнить, что проект создается командой

File->New Project.

В результате откроется окно «New Project» , изображенное на рисунке 1. В этом окне задается вкладка «Visual C++» и выбирается шаблон «Windows Forms Application» . В поле Name задается имя проекта, например MyApp01 . В поле «Location:» задается папка, в которой будут размещаться рабочие файлы проекта (в нашем случае это папка D:ProgramsCPP ).

Рис. 1. Окно создания нового проекта

После выбора OK система создаст новую форму, как показано на рисунке 2.

Рис. 2. Форма приложения после создания

2. Проектирование основной формы

2.1. Размещение элементов управления на форме

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

  • один элемент управления типа Label . Автоматически создается объект (переменная) класса Label с именем label1 . С помощью этого имени можно иметь доступ к результату;
  • один элемент управления типа Button . Автоматически создается объект с именем button1 . Этот элемент управления будет выводить текст условия задачи;
  • один элемент управления типа PictureBox (см. рис. 3). Этот элемент управления используется для визуализации сложной формулы. Формула представляется в виде файла с расширением *.jpg . В результате создается объект с именем pictureBox1 ;
  • один элемент управления типа Label в нижней части формы. Этот элемент управления будет выводить результат.
Читайте также:
Топ 5 антивирусных программ на ПК

После размещения элементов управления Label , Button , PictureBox форма программы будет иметь вид, как показано на рисунке 3.

Рис. 3. Форма приложения после размещения элементов управления

2.2. Настройка элементов управления Form , Label , Button

Нужно настроить следующие свойства элементов управления:

  • в элементе управления label1 свойство Text = «Рассчитать значение x» ;
  • в элементе управления button1 свойство Text = «Вычислить» ;
  • в элементе управления label2 свойство Text = «Результат» ;
  • в форме Form1 свойство Text = «Программа вычисления выражения» .

Дополнительно можно настроить другие свойства по собственному усмотрению.

2.3. Настройка элемента управления PictureBox

Поскольку элемент управления PictureBox предназначен для отображения рисунка на форме, то сначала нужно выбрать этот рисунок. Это осуществляется кликом мышкой на стрелке вправо в верхнем правом углу PictureBox, как показано на рисунке 4.

Рис. 4. Выбор меню задач PictureBox

В меню задач PictureBox выбирается команда «Choose Image…» . В результате откроется стандартное окно Windows «Open» , в котором нужно задать файл рисунка , который содержит формулу.

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

После выбора файла рисунка форма приложения будет иметь вид, как показано на рисунке 5.

Рис. 5. Форма приложения после загрузки файла рисунка

Как видно из рисунка 5 отображается только часть формулы. Чтобы поправить ситуацию нужно выполнить следующие действия:

  • активировать (выделить) элемент управления PictureBox ;
  • с помощью мышки увеличить ширину окна PictureBox ;
  • свойство SizeMode установить в значение StretchImage (масштабирование) как показано на рисунке 6.

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

Рис. 6. Форма приложения после настройки и свойство SizeMode

3. Добавление текста функции к программному коду

3.1. Добавление текста функции в модуль Form1.h

Функция вычисления выражения может размещаться в модуле «Form1.h» (не обязательно). Пусть эта функция называется Calc . В соответствии с условием задачи и соображений, функция должна получать один параметр целого типа. Результат работы функции есть вещественное число. Поэтому, функция будет возвращать значение типа double .

Поскольку, вся работа выполняется в одной форме, то и реализация тела функции будет внутри кода класса Form1 .

Таким образом, в нижнюю часть тела класса Form1 нужно добавить следующий программный код

// реализация функции Calc double Calc(int a) < double res, t; t = (double)a; res = (Math::Sqrt(t)+t)/2.0; return res; >

В теле функции используется функция Sqrt() , которая вычисляет корень квадратный.

3.2. Текст модуля «Form1.h» главной формы программы

На данный момент текст класса Form1 в сокращенном виде следующий:

#pragma once namespace MyApp01 < using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Windows::Forms; using namespace System::Data; using namespace System::Drawing; /// /// Summary for Form1 /// public ref class Form1 : public System::Windows::Forms::Form < public: Form1(void) < . >protected: /// /// Clean up any resources being used. /// ~Form1() < . >private: System::Windows::Forms::Button^ button1; protected: private: System::Windows::Forms::Label^ label1; private: System::Windows::Forms::PictureBox^ pictureBox1; private: System::Windows::Forms::Label^ label2; private: /// /// Required designer variable.

/// System::ComponentModel::Container ^components; #pragma region Windows Form Designer generated code /// /// Required method for Designer support — do not modify /// the contents of this method with the code editor. /// void InitializeComponent(void) < . >#pragma endregion // реализация функции Calc double Calc(int a) < double res, t; t = (double)a; res = (Math::Sqrt(t)+t)/2.0; return res; > >; >

4. Программирование обработчика события клика на кнопке «Вычислить»

Последний этап разработки программы, это программирование события Click клика на кнопке «Вычислить» . Пример программирования события клика на кнопке подробно описывается в теме:

В нашем случае, обработчик события будет иметь следующий вид:

private : System::Void button1_Click(System::Object sender, System::EventArgs e) < // вычисление double x; x = Calc(6) + Calc(13) + Calc(22); // вызов функции label2->Text = «Результат p05»>5. Запуск программы

Теперь можно запускать программу на выполнение. На рисунке 7 изображен результат выполнения программы

Рис. 7. Выполнение программы

Связанные темы

  • Описание функции. Фактические и формальные параметры. Передача параметров в функцию по значению и по адресу. Прототип функции
  • Функции и массивы. Передача одномерного и многомерного массива в функцию. Передача структуры и класса в функцию

Источник: www.bestprog.net

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