Inputowanie ilości zmiennych, układ współrzędnych i inne dziwności

0

Dzień dobry, potrzebuję pomocy z tym zadaniem w Python, mój poziom znajduje się między początkującym i średnim. Niestety nic nie można znaleźć na podobny temat na innych forach programistycznych jak na przykład StackOverFlow. Dziękuję z góry za wszelką pomoc, pozdrawiam.

Opera Zrzut ekranu_2022-11-24_171534.png

0
ZwolennikDyktaturyDecyzjonistycznej napisał(a):

Niestety nic nie można znaleźć na podobny temat na innych forach programistycznych jak na przykład StackOverFlow.

Kolejny szukający gotowców ... wiesz, że jesteście już śmieszni

Szanowny kolego, szukaj wiedzy o elementach. Każda, najdłuższa podróż, zaczyna się od pierwszego kroku
a) "inputowanie" jak mówisz zmiennych
b) mnożenie, dodawania. Za trudne ?
c) drukowanie

Z czym masz problem?

1

Czy wszystkie punkty muszą być w środku tego prostokąta? Jak tak to znacznie uprości zadanie i przyśpieszy obliczenia, bo tylko skrajne będą się liczyć

1

Odpowiedź zawsze 0 dla podanych na wykresie danych w punkcie Left=2, Top=-2, Right=2, Bottom=-2
Jeżeli zaś wszystkie muszą być w środku to:
Top=max(Pi.y)-2
Bottom=min(Pi.y)+2
Right=max(Pi.x)+2
Left=min(Pi.x)-2
Wynik: (max(Pi.y)-min(Pi.y)+4)*(max(Pi.x)-min(Pi.x)+4)
Nawet nie musisz gromadzić tych punktów.

0
_13th_Dragon napisał(a):

Odpowiedź zawsze 0 dla podanych na wykresie danych w punkcie Left=2, Top=-2, Right=2, Bottom=-2
Jeżeli zaś wszystkie muszą być w środku to:
Top=max(Pi.y)-2
Bottom=min(Pi.y)+2
Right=max(Pi.x)+2
Left=min(Pi.x)-2
Wynik: (max(Pi.y)-min(Pi.y)+4)*(max(Pi.x)-min(Pi.x)+4)
Nawet nie musisz gromadzić tych punktów.

Małe pytanie - jak uzyskać te punkty bez ich gromadzenia w taki sposób, by użytkownik programu mógł sam wybrać ilość zmiennych, a także wpisać te punkty?

Dzięki z góry.

0

użytkownik nie musi wiedzieć nic o zmiennych.
Ogarniasz pętle?
Zapytujesz o współrzędne, nie ważne czy o jedną, czy o sto - za każdym razem zapamiętujesz tylko skrajne wartości - do tego wystarczą cztery zmienne.

Da się program napisać bez tablic, średniozaawansowanyprogramisto.

0
areksum napisał(a):

Zapytujesz o współrzędne, nie ważne czy o jedną, czy o sto - za każdym razem zapamiętujesz tylko skrajne wartości - do tego wystarczą cztery zmienne.
Da się program napisać bez tablic, średniozaawansowanyprogramisto.

No bez przesady, mi wychodzi że minimum 7: Count,Py,Px,MinPy,MaxPy,MinPx,MaxPx

0

import math
v = input("Podaj współrzędne x swoich punktów: ").split()
v = [int(x) for x in v]
z = input("Podaj współrzędne y swoich punktów: ").split()
z = [int(x) for x in z]
a = max(z)
b = min(z)
c = max(v)
d = min(v)
dlugosc1 = len(v)
dlugosc2 = len(z)
if dlugosc1 != dlugosc2:
print ("Należy wpisać po tyle samo współrzędnych x i y")
else:
wynik = ((a-b+4)+(c-d+4))*2
print ("Wynik to:")
print (wynik)
input("\nAby zakończyć program naciśnij klawisz Enter.")

@areksum, @_13th_Dragon - napisałem coś takiego. Spełnia swoje zadanie i poprawnie wylicza minimalny obwód dla podanego warunku. Dziękuję za pomoc!

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.