Új hozzászólás Aktív témák
-
sko
csendes tag
KREE, a C++-ban (OOP-ban) való programozás egyik alaptulajdonsága, hogy nem jó a később majd megszépítjük módszer, már az alapokat is jól kell lerakni. A te feladatod központi problémája két pont távolságának kiszámítása. Először ezt kell C++-ban leprogramozni. Íme itt egy lehetséges implementáció. Remélem minden tiszta benne, ha nem kérdezz nyugodtan! Ha tiszta, akkor innen kell továbblépni a pontok konténerekbe tárolásával és távolságuk kiszámításával.
#include <iostream>
#include <cmath>
using namespace std;
class Point
//If you need to calculate the distances of points, always start with creating a point object type.
{
int x = 0;
int y = 0;
public:
Point(): x(0), y(0) {}
Point(int X, int Y): x(X), y(Y) {}
float operator - (const Point&);
//Overloaded minus operator to calculate the distance of two points.
//This will enormously simplify your work later.
};
float Point::operator - (const Point& other)
{
int X = x - other.x;
int Y = y - other.y;
//No abs() necessary, because we will square the coordinates anyway.
float distance = sqrt(X*X + Y*Y);
//Could be double, long double, whatever you like.
return distance;
//There is no real need for this variable, you could return the result of sqrt() directly. Whatever you like.
}
int main()
{
Point middlepoint(8,-6);
Point endpoint(-5,10);
float dist = middlepoint - endpoint;
//Calculate the distance of these points. It's just that simple.
cout << dist << endl;
return 0;
} -
pvt.peter: teljesen igazad van - szemantikailag

Mondjuk körök középpontját biztos nem önálló r1, r2, r3, ... , rvalami, rvalamipluszegy változókba raknám.
Inkább egyvector<pair<int,int>>. Azon szépen végig lehet iterálni.Amúgy az
|x-rx| < d & |y-ry| < dnem adja vissza, hogy az(x,y) ponttényleg ad sudarú (rx, ry) központú körönbelül van-e. Ezzel azt ellenőrzöd, hogy a(px,py) központú 2d oldalhosszú négyzetbenvan-e...Kicsit személetesen:

A piros pont a körben nincs benne, de a feltétel igaz. -
if (10>(x1-r1||x1-r3||x1-r5)>-10 && 10>(y1-r2||y1-r4||y1-r6)>-10)
Ez biztos nem C++ szintaktika.
Mit értesz az alatt, hogy x és r különbsége? A kódodban van x1 meg y1 meg r1, r2, r3, r4, r5, és r6...Talán így:
if ((min(min(abs(x1-r1), abs(x1-r3)), abs(x1-r5)) < 10) && (min(min(abs(y1-r2), abs(y1-r4)), abs(y1-r6)) < 10))
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Xiaomi 14T - nem baj, hogy nem Pro
- Xiaomi 15T - reakció nélkül nincs egyensúly
- Házimozi belépő szinten
- Hardcore café
- Elektromos autók - motorok
- Projektor topic
- sziku69: Fűzzük össze a szavakat :)
- Jelentősen átalakulhat a Xiaomi 17 Ultra kamerarendszere
- Luck Dragon: Asszociációs játék. :)
- ASUS routerek
- További aktív témák...
- RTX 4070 ti I Ryzen 5 7600X I 2x16gb ddr5 6000mHz
- LAST MINUTE KARÁCSONY! 2 egyforma i7 GAMER GÉP! Ingyenes SOS kiszállítás (Bp.) !!!
- Asus ROG Zephyrus G16 Intel Core Ultra 9 185H/RTX 4060/16GB DDR5/1TB SSD eladó NÁLAM A LEGOLCSÓBBAN!
- MacBook Pro M1 13 inch 8/512GB magyar bill nálam a legolcsóbban
- Fujitsu 27" B27-8 TE Full HD 1920x1080 hófehér monitor állítható magasság, PIVOT, HDMI számla + gar
- Bomba ár! HP Elitebook 840 G1 - i5-4GEN I 8GB I 500GB I 14" HD I Cam I W10 I Gari!
- Huawei P20 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- Dell Latitude 5440 - i7-1365U, 32GB RAM, 1TB SSD, jó akku számla, garancia
- Lenovo ThinkPad P14s Gen 1 i7-10510U 32GB 1000GB Nvidia Quadro P520 14" FHD Gar.: 1 év
- Asus Zenbook 13 laptop Oled kijelző!
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest




