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

Jezyk C++ - zrozumienie działania programu

Cloud VPS
0 głosów
290 wizyt
pytanie zadane 29 listopada 2017 w C i C++ przez belkocik Początkujący (330 p.)
edycja 29 listopada 2017 przez criss

Cześć. Wytłumaczycie mi jak ten program działa ? Glubie się w tym i nie rozumiem co do czego się odnosi i jakie funkcje pełnia ;/ Najwieksze problemy mam w tworzeniu deklaracji i później odnoszenia sie do niej

z.h

struct Zespolona
{
	double Rzecz;
	double Uroj;
};

double ModulZ(Zespolona); // Tutaj deklarujemy zmienna zmiennoprzecinkowa ktora uzywa struktury Zespolona?

Zespolona DodajZ(Zespolona, Zespolona);

z.cpp

#include "stdafx.h"
#include "z.h"
#include <math.h>

double ModulZ(Zespolona Z1)
{
	return sqrt(Z1.Rzecz*Z1.Rzecz + Z1.Uroj*Z1.Uroj); 
}

Zespolona DodajZ(Zespolona Z2, Zespolona Z3)
{
	Zespolona ZSuma; //
	ZSuma.Rzecz = Z2.Rzecz + Z3.Rzecz; 
	ZSuma.Uroj = Z2.Uroj + Z3.Uroj;
	return (ZSuma);

liczbyzespolone.cpp

#include "stdafx.h"
#include "z.h"

int main()
{

	Zespolona Z = { 1.5, -2.5 };
	double Wynik;
	Wynik = ModulZ(Z);
	
	Zespolona Z2 = { 1.5, -2.4 };
	Zespolona ZWynik;
	ZWynik = DodajZ(Z, Z2);
	
}

co polecacie zeby to ogarnac?

komentarz 29 listopada 2017 przez criss Mędrzec (172,570 p.)
double ModulZ(Zespolona); // Tutaj deklarujemy zmienna zmiennoprzecinkowa ktora uzywa struktury Zespolona?

 Nie, to deklaracja funkcji.

co polecacie zeby to ogarnac?

Jakikolwiek kurs podstaw c++ (tak, to jest c++, nie C, zaraz poprawie nazwe tematu). Odpal kilka pierwszych odcinków proceduralnego c++ (bo najwyraźniej masz problemy nawet z funkcjami) i kilka pierwszych odcinków obiektowego (pewnie już w pierwszym będzie wyjaśnione wszystko czego potrzebujesz) chociażby u MZ (kanał Pasja Informatyki na yt). Polecam jednak ten kurs. Generalnie rzeczy na tyle ogólne i podstawowe, że nie ma sensu tłumaczyć na forum. 

komentarz 29 listopada 2017 przez belkocik Początkujący (330 p.)
edycja 29 listopada 2017 przez belkocik
To jest jezyk C - tak nam wykladowca powiedzial ktorego tlumaczenie nie jest zrozumiale ;/

do tego nie korzystamy wogole z printf tylko debuggera
komentarz 29 listopada 2017 przez draghan VIP (106,230 p.)

tak, to jest c++, nie C, zaraz poprawie nazwe tematu

Na jakiej podstawie takie stwierdzenie, Criss?

komentarz 29 listopada 2017 przez criss Mędrzec (172,570 p.)
Brak słówka struct w deklaracji obiektu Z czy Z2 (w C jest wymagane). Poza tym.. chyba faktycznie nic. Tym się zasugerowałem, może troche przesadzam, ale imo to nie jest w porządku jeśli gość (prowadzący zajęcia) okraja sobie C++ tak żeby wyglądał jak C, ale zostawiając jakieś drobne uprzyjemniacze. No i rozszerzenie .cpp, więc kompilator i tak kompilowałby to jako c++ nawet jeśli słówko struct by tam było.

1 odpowiedź

0 głosów
odpowiedź 29 listopada 2017 przez k222 Nałogowiec (30,150 p.)

z pliku .h

double ModulZ(Zespolona); 
Zespolona DodajZ(Zespolona, Zespolona);

To są deklaracje funkcji, pierwsza przyjmuje w argumencie jeden obiekt struktury Zminna i zwraca double, druga przyjmuje jako argumenty dwa obiekty Zmienna i zwraca obiekt Zmienna

w drugim pliku masz napisane dokładnie te funkcje. Przy deklarowaniu ich  w  .h wystarczyło podać tylko typ argumentów, tutaj już masz typ i nazwę

double ModulZ(Zespolona Z1)
Zespolona DodajZ(Zespolona Z2, Zespolona Z3)

Pierwsza funkcja zwraca moduł liczby zespolonej, druga sumę dwóch liczb zespolonych

Trzeci plik to main i użycie funkcji

komentarz 29 listopada 2017 przez belkocik Początkujący (330 p.)
To jest jezyk C - tak nam wykladowca powiedzial ktorego tlumaczenie nie jest zrozumiale ;/
komentarz 29 listopada 2017 przez k222 Nałogowiec (30,150 p.)
Jeżeli wykłady są do kitu to się na nie nie chodzi (chyba że u was musicie to współczuję), lepiej wziąć dobrą książkę do języka albo tutoriale na youtube i samemu się nauczyć, a co do konkretnych tytułów to poszukaj w internecie co jest aktualnie polecane.

Podobne pytania

0 głosów
2 odpowiedzi 608 wizyt
pytanie zadane 13 kwietnia 2021 w Python przez qwert 100 Obywatel (1,250 p.)
0 głosów
2 odpowiedzi 857 wizyt
pytanie zadane 25 sierpnia 2017 w C i C++ przez niezalogowany
0 głosów
1 odpowiedź 242 wizyt
pytanie zadane 14 stycznia 2017 w C i C++ przez heros22pt Użytkownik (950 p.)

93,484 zapytań

142,417 odpowiedzi

322,763 komentarzy

62,896 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

Kursy INF.02 i INF.03
...