М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
vo10
vo10
03.01.2021 05:12 •  Информатика

Как написать условие (можно в Паскале/ Питоне/ Русским языком/ как хотите), что точка пересечения двух прямых находится между гиперболой / посередине (см. Пример на фото)? Формула гиперболы: a/(x+b)+c
Формула 1 прямой: k+d*x
Формула 2 прямой: k1+d1*x
Формула нахождения x точки пересечения: (d1-d)/(k-k1)
Основная задача: Нужно написать программу, которая указывает, где находится точка (ее координаты вводит пользователь(x,y)) по отношению к графику. Пользователь так же вводит переменные гиперболы(a,b,c) и прямых(k,d,k1,d1). Но график должен быть определенным (т.е. Примерно как на рисунке, чтобы у каждой прямой было две точки пересечения с гиперболой, и точка пересечения этих прямых была между/ посередине гиперболы). Поэтому для начала мне нужно написать условие, которое правильно строит график. То есть a>0, k<>k1, (x+b)<>0, k>0, k1>0. А потом нужно указать, что точка пересечения этих двух прямых находится между/ посередине гиперболы. А я туплю, как это сделать.


Как написать условие (можно в Паскале/ Питоне/ Русским языком/ как хотите), что точка пересечения дв

👇
Открыть все ответы
Ответ:
dendenisenko2
dendenisenko2
03.01.2021
#include <iostream>
#include <sstream>

using namespace std;
struct Vector3
{
int x, y, z;
Vector3()
{}

Vector3(int x, int y, int z): x(x), y(y), z(z)
{}
Vector3 operator + (Vector3 v1)
{
return Vector3(this->x+v1.x,this->y+v1.y,this->z+v1.z);
}
std::string ToString()
{
std::stringstream s;
s <<"(" << this->x << "," << this->y <<"," << this->z << ")";
return s.str();
}
};

int main()
{
Vector3 v1(1, 2, 3);
Vector3 v2(4, 5 ,6);
Vector3 v3;

v3 = v1 + v2;

cout << v3.ToString();
}
4,5(5 оценок)
Ответ:
вася783
вася783
03.01.2021
Реализация на с++

Уровень А
#include<iostream.h>

using namespace std;

int main(){
  int a,b;
  cin >>a >> b;
  double s = 0.5 * a * b;
  cout << s << endl;
  return 0;
}
Уровень B
#include<iostream.h>

using namespace std;

int main(){
  int n;
  cin >> n;
  (n%3==0) ? n*2 : n+n%3;
  cout << n << endl;
  return 0;
}
Уровень C
#include<iostream.h>

using namespace std;

int main(){
  int summa = 0;
  for(int i = 1; i < 100; i+=2){
     summa += i;
  }
  cout << summa << endl;
  return 0;
}
4,4(53 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ