Реализовать внешнюю функцию с именем make_тип - C#
Формулировка задачи:
Помогите переделать задачу под мою или исправить ошибки.
Реализовать внешнюю функцию с именем make_тип( ), где тип - тип
реализуемой структуры. Функция должна получать в качестве аргументов
значения для полей структуры и возвращать структуру требуемого типа. При
передаче ошибочных параметров следует выводить сообщение и заканчивать
работу.
Поле first - целое положительное число, числитель; поле second - целое
положительное число, знаменатель. Реализовать метод ipart () - выделение
целой части дроби first/second. Метод должен проверять неравенство
знаменателя нулю.
Листинг программы
- public struct Drob
- {
- public Drob(int first, int second)
- {
- this.first = first;
- this.second = second;
- }
- public double iPart(int first, int second)
- {
- double chelaya_chast = 0;
- if (second != 0)
- {
- chelaya_chast = first / second;
- chelaya_chast = Math.Truncate(chelaya_chast);
- }
- else chelaya_chast = -1;
- return chelaya_chast;
- }
- int first, second;
- }
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- }
- public bool Init(int first, int second)
- {
- bool flag = true;
- if (first - (int)first != 0) flag = false;
- if (second - (int)second != 0) flag = false;
- return flag;
- }
- public void Read(out int first,out int seocnd)
- {
- first = int.Parse(textBox1.Text);
- seocnd = int.Parse(textBox2.Text);
- }
- public void Display(double chelaya_chast)
- {
- if (chelaya_chast!==-1)label3.Text = "Chelaya chast: " + chelaya_chast.ToString();
- else label3.text="divisionbyzero";
- }
- public Drob make_Drob(int first, int second)
- {
- Drob x = new Drob(first, second);
- return x;
- }
- private void button1_Click(object sender, EventArgs e)
- {
- int first = 0, second = 0;
- Drob c;
- double chelaya_chast;
- bool flag = true;
- Read(out first, out second);
- flag = Init(first, second);
- if (flag)
- {
- c = make_Drob(first, second);
- chelaya_chast = c.iPart(first, second);
- Display(chelaya_chast);
- }
- else label3.Text = "Неверный формат ввода!!!!";
- }
- }
- }
Решение задачи: «Реализовать внешнюю функцию с именем make_тип»
textual
Листинг программы
- #include <iostream>
- #include <string>
- #include <math.h>
- using namespace std;
- struct Gipotenuza
- {
- double first; // катет А
- double second; // катет В
- void read()
- {
- cout << "Введите катет А: ";
- cin >> first;
- cout << "Введите катет В: " ;
- cin >> second;
- }
- void display()
- {
- cout << "Гипотенуза равна: "<< sqrt(first*first+second*second);
- cout << endl;
- }
- void Init(double a,double b)
- {
- first=a;
- second=b;
- }
- };
- int main()
- {
- Gipotenuza a;
- a.read();
- a.display();
- return 0;
- }
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Windows.Forms;
- namespace Structura_Anna
- {
- public struct Stepen
- {
- public Stepen(double first, double second)
- {
- first_a = first;
- second_a = second;
- }
- public double Power(double first, double second)
- {
- double vozved_step = 0;
- {
- vozved_step = Math.Pow(first_a,second_a);
- };
- return vozved_step;
- }
- double first_a; double second_a;
- }
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- }
- public bool Init(double first_a, double second_a)
- {
- bool flag = true;
- if (first_a - (double)first_a != 0) flag = false;
- if (second_a - (double)second_a != 0) flag = false;
- return flag;
- }
- public void Read(out double first, out double seocnd)
- {
- first = double.Parse(textBox1.Text);
- seocnd = double.Parse(textBox2.Text);
- }
- public void Display(double vozved_step)
- {
- if (vozved_step != -1)
- label3.Text = " " + vozved_step.ToString();
- else label3.Text=" ";
- }
- public Stepen make_Stepen(double first_a, double second_a)
- {
- Stepen x = new Stepen(first_a, second_a);
- return x;
- }
- private void button1_Click(object sender, EventArgs e)
- {
- double first_a = 0; double second_a = 0;
- Stepen c;
- double vozved_step;
- bool flag = true;
- Read(out first_a, out second_a);
- flag = Init(first_a, second_a);
- if (flag)
- {
- c = make_Stepen(first_a, second_a);
- vozved_step = Math.Sqrt(first_a,first_a);
- Display(vozved_step);
- }
- else label3.Text = "Неверный формат ввода!!!!";
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д