• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zadanie z programowania w C

Object Storage Arubacloud
0 głosów
351 wizyt
pytanie zadane 12 stycznia 2021 w C i C++ przez grzecho123 Początkujący (450 p.)

Próbowałem zrobic zadanie: 

Utwórz strukturę, która będzie odpowiadać zapisowi punktu w przestrzeni 3D, czyli będzie posiadać trzy składowe np. X,Y,Z. Napisz dwie funkcje - pierwsza typu void przyjmująca wskaźnik do struktury, która wypełni składowe losowymi liczbami z przedziału od -3 do 3. Druga typu bool, przyjmująca dwa wskaźniki na struktury, która porówna oba punkty pod kątem identyczności i zwróci odpowiednią wartość logiczną. Do odwoływania się do składowych wskaźnika struktury wykorzystaj operator wyłuskania składowej, czyli strzałkę ->.

Mój kod wygląda tak:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

struct trzyd
{
    int x,y,z;
};

void losowe(struct trzyd *a)
{

    a->x=(rand()%7)-4;
    a->y=(rand()%7)-4;
    a->z=(rand()%7)-4;
}

bool porownanie
{
    ;
}

int main()
{
    srand(time(NULL));
    struct trzyd *s;
    losowe(&s);
    return 0;
}

Po pierwsze wiem, że zrobiłem jakiś błąd w generowaniu tych liczb losowych ale nie wiem jaki. Moje pytanie jest odnośnie funkcji bool, gdyż w treści zadania jest napisane by porównać oba punkty pod względem identyczności, ale skąd ja wezmę oba punkty? Muszę zrobić tablicę wskaźników czy na jakiej zasadzie ma to polegać?

1 odpowiedź

0 głosów
odpowiedź 12 stycznia 2021 przez SzkolnyAdmin Szeryf (86,360 p.)
Co do porównania, to wygeneruj dwa punkty w przestrzeni 3D i podeślij wskaźniki do nich po funkcji porównującej.
komentarz 12 stycznia 2021 przez grzecho123 Początkujący (450 p.)
a dlaczego dałeś to jako const? I oczywiście dziękuję za poprawki
1
komentarz 12 stycznia 2021 przez tkz Nałogowiec (42,000 p.)
A chcesz to zmieniać? Moim zdaniem(podobnie jak w innych językach na przykład Rust) zmienne domyślnie powinny być const(częściej spotykane - immutable). const w parametrze daje pewność, że struktura nie ulegnie zmianie, bo tego nie chcemy.
komentarz 12 stycznia 2021 przez grzecho123 Początkujący (450 p.)
Nie chce zmieniać po prostu chcę wiedzieć po co jest cos użyte, gdyż dopiero uczę się programować, a jak nie zapytam to później gdzieś wyjdzie w kodzie moja niewiedza.
komentarz 12 stycznia 2021 przez tkz Nałogowiec (42,000 p.)
Błędnie zinterpretowałeś pierwsze pytanie. A chcesz zmieniać strukturę wewnątrz funkcji? No nie chcesz, to dla pewności, że tego nie zrobisz dodajesz const. Przy próbie modyfikacji czegoś z const, kompilator rzuci błąd.
komentarz 12 stycznia 2021 przez grzecho123 Początkujący (450 p.)
Aaa ok źle zrozumiałem

Podobne pytania

0 głosów
1 odpowiedź 787 wizyt
pytanie zadane 14 czerwca 2018 w C i C++ przez Mithriandil Początkujący (250 p.)
0 głosów
1 odpowiedź 184 wizyt
pytanie zadane 28 kwietnia 2020 w C i C++ przez Hubertius Bywalec (2,970 p.)
0 głosów
1 odpowiedź 494 wizyt
pytanie zadane 4 kwietnia 2020 w C i C++ przez Hubertius Bywalec (2,970 p.)

92,555 zapytań

141,403 odpowiedzi

319,557 komentarzy

61,940 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...