Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Struktury, dalsze problemy


Rekomendowane odpowiedzi

Opublikowano

Tym razem mój program wygląda tak.

// ConsoleApplication5.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <iostream>
#include<string>
#include<fstream>
using namespace std;


struct student
{
	string imie;
	string nazwisko;
	string plec;
	string pesel;
	string indeks;
	void display_student()
	{
		cout << "\n Nazywasz sie\n " << imie << " " << nazwisko << "\n Jestes " << plec << "\n O numerze pesel  " << pesel << "\n i indeksie  " << indeks;
	}
};
void display_all_students(student tab[], int ilosc)
{
	for (int i = 0; i < ilosc; i++)
		tab[i].display_student();
}
int find_students(student tab[], int ilosc, string indeks)
{
	for (int i = 0; i < ilosc; i++)
		if (tab[i].indeks == indeks)
			return i;
	return -1;

}
void add_student(student tab[], int ilosc)
{

	for (int i = 0; i < ilosc; i++)
	{
		tab[i] = tab[i - 1];
		cout << "Podaj swoje imie " << endl;
		cin >> tab[0].imie;
		cout << "Podaj swoje nazwisko" << endl;
		cin >> tab[0].nazwisko;
		cout << "Podaj swoją plec" << endl;
		cin >> tab[0].plec;
		cout << "Podaj swoj pesel" << endl;
		cin >> tab[0].indeks;
		cout << "Podaj swoj numer indeksu" << endl;
		cin >> tab[0].indeks;
		for (int j = 0; j < ilosc; j++)
            tab[j].display_student(); // chcę aby wyświetliło mi tablice wraz z nowym studentem.
	}
}

void remove(student tab[], int ilosc, int numer) // ta ma usuwać 1 studenta.
{
	for(int i=0, i<ilosc;i++)
if(i != numer) tab[i].display_student();
}

void save_student(student j) // tej funkcji jeszcze tak naprawdę nie ogarniałem ze względu, że inne nie działały. Tutaj też // dodałem bodajże zapisywanie.
{
	fstream plik;
	string w;
	plik.open("ddd.txt", ios::in || ios::out);
	if (plik.good() == true)
	{
		plik << j.imie;
		plik >> w;
		plik.close();
	}
	cout << w << endl;
}

int main()
{
	student j, c;
	cout << "Podaj imie" << endl;
	cin >> j.imie;
	cout << "Podaj nazwisko" << endl;
	cin >> j.nazwisko;
	cout << "Podaj plec" << endl;
	cin >> j.plec;
	cout << "Podaj pesel" << endl;
	cin >> j.pesel;
	cout << "Podaj indeks" << endl;
	cin >> j.indeks;
	student tab[3];
	tab[0].imie = "Szymon";
	tab[0].nazwisko = "Pawlowski";
	tab[0].plec = "Mezczyzna";
	tab[0].pesel = "4363463";
	tab[0].indeks = "436456";
	tab[1].imie = " Wojtek";
	tab[1].nazwisko = "Mazur";
	tab[1].plec = "Mezczyzna";
	tab[1].pesel = "4366356";
	tab[1].indeks = "4636";
	tab[2].imie = "Michal";
	tab[2].nazwisko = "Wojtczak";
	tab[2].plec = "Mezczyzna";
	tab[2].pesel = "5435345";
	tab[2].indeks = "435353";
	j.display_student();
	cout << endl;
	display_all_students(tab, 3);
	cout << endl;
	cout << find_students(tab, 3, "435353") << endl;
	cout << endl;
	add_student(tab, 3);
	remove(tab, 3, 1);
	save_student(j);

	system("pause");
	return 0;
}

pl ;)

Opublikowano

add_student już chyba działa mi poprawnie. Szczerze to nie wiem bo wczoraj działał mi dobrze a dziś jak go odpaliłem to nie :D. Ale chyba mam problem z remove teraz.

Jednak nie miałem racji, Dalej mam ten błąd.  No właśnie nie wiem jak zwiększyć rozmiar tablicy. Jedyny pomysł to zrobienie tablicy dynamicznej :>

pl ;)

Opublikowano

teraz poprawiłem trochę ale chyba funkcja remove mi nie działa. Może ktoś pomóc ? Bo trochę się zakręciłem ...

pl ;)

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...