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

Struktury danych - jaki typ?

VPS Starter Arubacloud
0 głosów
181 wizyt
pytanie zadane 1 maja 2020 w C i C++ przez Atman Użytkownik (810 p.)
Moje zadanie brzmi: "Utwórz strukturę o nazwie student, która przechowuje następujące dane: imię, nazwisko, numer indeksu, średnia. Utwórz pięć obiektów struktury student i wypełnij wszystkie pola danymi. Stwórz dwie tablice zawierające tych pięć obiektów: z pamięcią alokowaną statycznie i pamięcią alokowaną dynamicznie."

I teraz pytanie: jaka struktura danych jest w tym zadaniu potrzebna? Stos, kolejka, lista, drzewo? Nie za bardzo potrafię to ocenić

1 odpowiedź

0 głosów
odpowiedź 1 maja 2020 przez adrian17 Ekspert (344,100 p.)
Żadna. To pytanie nie prosi o napisanie żadnych złożonych struktur danych. Chcą tylko żebyś stworzył prostą strukturę i tablicę obiektów tego typu.
komentarz 1 maja 2020 przez Atman Użytkownik (810 p.)
"Utwórz strukturę o nazwie student". Ja nie znam innych struktur niż 4 które wymieniłem. Może powiesz mi z któej powinienem tutaj skorzystac?
komentarz 1 maja 2020 przez adrian17 Ekspert (344,100 p.)

Może powiesz mi z któej powinienem tutaj skorzystac?

Z żadnej. Przekombinowujesz.

Utwórz strukturę o nazwie student

struct Student {
    // tutaj wstaw zawartosc
};

 

komentarz 1 maja 2020 przez Atman Użytkownik (810 p.)
Już coś znalazłem w tym temacie. A po poleceniu powinienem wprowadzać te dane w programie czy pytać o nie użytkownika w konsoli? Bo nie jestem w stanie rozstrzgnąć a komunikacja z naszą panią do najlepszych nie należy. A jeśli nie da się tego osądzić to jak będzie wygodniej z przepisywaniem do tablic?
komentarz 1 maja 2020 przez adrian17 Ekspert (344,100 p.)

Już coś znalazłem w tym temacie

Naprawdę, wciąż przekombinowujesz :D To jest ta łatwa część, tutaj słowo po słowie się za treścią zadania idzie (zakładam C++a):

// Utwórz strukturę o nazwie student,
struct Student {
    //która przechowuje następujące dane:
    // imię,
    string imie;
    // nazwisko,
    string nazwisko;
    // numer indeksu,
    int numer_indeksu;

// etc etc

czy pytać o nie użytkownika w konsoli

Ja bym zinterpretował "wypełnij wszystkie pola danymi" jako wypełnienie jakimiś wybranymi wartościami w kodzie programu.

komentarz 1 maja 2020 przez Atman Użytkownik (810 p.)

To z deklaracją zrobiłem wcześniej. Dobra wypełniłem to jakimiś danymi ale nie wiem czemu mi pokazuje błędy. Pokazuje że nieudanie zrobiłem konwersję z const char na int kiedy ja nie deklarowałem nigdzie char. Nie wiem o co chodzi.

#include <iostream>
#include <list>
#include <string>
#include <cstdlib>

using namespace std;

typedef struct student {
  string imie;
  string nazwisko;
  int indeks;
  float srednia;
}student;

int main()
{
    student student1;
    student1.imie = "Jan";
    student1.nazwisko = "Kowalski";
    student1.indeks = "212345";
    student1.srednia = "5.5";

    student student2;
    student2.imie = "Krzysztof";
    student2.nazwisko = "Malinowski";
    student2.indeks = "254321";
    student2.srednia = "4.5";

    student student3;
    student3.imie = "Piotr";
    student3.nazwisko = "Wielki";
    student3.indeks = "256789";
    student3.srednia = "3.5";

    student student4;
    student4.imie = "Robert";
    student4.nazwisko = "Prawy";
    student4.indeks = "298765";
    student4.srednia = "3.75";

    student student5;
    student5.imie = "Janusz";
    student5.nazwisko = "Krawiecki";
    student5.indeks = "219285";
    student5.srednia = "4.37";

    return 0;
}

 

komentarz 1 maja 2020 przez adrian17 Ekspert (344,100 p.)
    student1.indeks = "212345";
    student1.srednia = "5.5";

indeks i srednia to liczby, a tutaj próbujesz przypisać stringi.

Swoją drogą:

typedef struct student { (...) } student;

To nie C, w C++ie wystarczy to :)

struct student { (...) };

 

komentarz 1 maja 2020 przez Atman Użytkownik (810 p.)
Prawie zawsze się daję złapać na takie łatwe błędy. Dobra to widzę pierwsza część zadania jest zrobiona. Teraz trzeba to upchać w tablicę. I tu jest problem bo tablica jest jednego typu a ja mam 3 typy zmiennych. Jak to rozwiązać?
komentarz 1 maja 2020 przez adrian17 Ekspert (344,100 p.)

a ja mam 3 typy zmiennych

Ja widzę jeden typ - `student`.

komentarz 1 maja 2020 przez Atman Użytkownik (810 p.)
Do tej struktury jest int, string i float więc 3
komentarz 1 maja 2020 przez adrian17 Ekspert (344,100 p.)
Ale to jest tablica studentów. Zresztą w Twoim nowszym pytaniu jest to sensownie napisane.

Podobne pytania

0 głosów
1 odpowiedź 195 wizyt
0 głosów
1 odpowiedź 893 wizyt
pytanie zadane 1 maja 2020 w C i C++ przez Atman Użytkownik (810 p.)
+1 głos
2 odpowiedzi 291 wizyt
pytanie zadane 10 marca 2021 w C i C++ przez huberos23 Nowicjusz (170 p.)

92,452 zapytań

141,262 odpowiedzi

319,079 komentarzy

61,854 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

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 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!

...