Cześć, jestem totalnie zielony w temacie C# i mam problem ponieważ na studia muszę przetłumaczyć albo jak kto woli zrobić analogiczny program w C# do tego co napisałem wcześniej w Cpp. Sprawa nie jest ciężka ale siedzę nad tym już drugi dzień, nie mam siły i potrzebuje pomocy. Zadanie brzmi "pracownicy" Generalnie program w którym możemy dodaj usunąc edytować pracownika na liście, w Cpp był wymóg żeby był zapis do vectora wiec w C# bedzie to pewnie lista. Wiem ze programy (nawet ten w cpp są patologicznie napisane) ale jestem już zdesperowany i nie daje rady. Bardzo proszę o pomoc.
Tutaj kod mojego cpp
#include "stdafx.h"
#include <string>
#include <iostream>
#include <vector>
#include <fstream>
#include <cstdlib>
using namespace std;
class pracownik
{
string imie, nazwisko, stanowisko;
int wiek;
public:
void dodaj_imie(string);
void dodaj_nazwisko(string);
void dodaj_stanowisko(string);
void dodaj_wiek(int);
string get_imie();
string get_nazwisko();
string get_stanowisko();
int get_wiek();
};
void pracownik::dodaj_imie(string x) { imie = x; }
void pracownik::dodaj_nazwisko(string x) { nazwisko = x; }
void pracownik::dodaj_stanowisko(string x) { stanowisko = x; }
void pracownik::dodaj_wiek(int x) { wiek = x; }
string pracownik::get_imie() { return imie; }
string pracownik::get_nazwisko() { return nazwisko; }
string pracownik::get_stanowisko() { return stanowisko; }
int pracownik::get_wiek() { return wiek; }
vector <pracownik>tab_pracownikow;
void menu()
{
system("cls");
cout << "PRACOWNICY W FIRMIE:" << endl << endl;
cout << "DODAJ NOWEGO PRACOWNIKA ---- PRESS (1)" << endl;
cout << "EDYTUJ DANE ISTNIEJACEGO PRACOWNIKA ---- PRESS (2)" << endl;
cout << "USUN PRACOWNIKA ---- PRESS (3)" << endl;
cout << "WYSWIETL LISTE AKTUALNYCH PRACOWNIKOW ---- PRESS (4)" << endl;
cout << "ZAMKNIJ PROGRAM ---- PRESS (5)" << endl;
cout << endl << "WYBIERZ NUMER CZYNNOSCI I KLIKNIJ ENTER...";
}
void dodaj()
{
string z;
int u;
pracownik nowy;
cout << "IMIE PRACOWNIKA: ";
cin >> z;
nowy.dodaj_imie(z);
cout << "NAZWISKO PRACOWNIKA: ";
cin >> z;
nowy.dodaj_nazwisko(z);
cout << "STANOWISKO PRACOWNIKA: ";
cin >> z;
nowy.dodaj_stanowisko(z);
cout << "WIEK PRACOWNIKA: ";
cin >> u;
nowy.dodaj_wiek(u);
tab_pracownikow.push_back(nowy);
}
void edytuj()
{
string z;
int u, i = 0;
pracownik nowy;
cout << "NR PRACOWNIKA DO EDYCJI: ";
getchar();
i = getchar();
i = i - 48;
tab_pracownikow.erase(tab_pracownikow.begin() + i - 1);
cout << "IMIE PRACOWNIKA: ";
cin >> z;
nowy.dodaj_imie(z);
cout << "NAZWISKO PRACOWNIKA: ";
cin >> z;
nowy.dodaj_nazwisko(z);
cout << "STANOWISKO PEACOWNIKA: ";
cin >> z;
nowy.dodaj_stanowisko(z);
cout << "WIEK PRACOWNIKA: ";
cin >> u;
nowy.dodaj_wiek(u);
tab_pracownikow.insert(tab_pracownikow.begin() + i - 1, nowy);
}
void usun()
{
string z;
int i = 0;
cout << "NR PRACOWNIKA DO USUNIECIA: ";
getchar();
i = getchar();
i = i - 48;
tab_pracownikow.erase(tab_pracownikow.begin() + i - 1);
}
void pokaz()
{
cout << endl << "LISTA PRACOWNIKOW" << endl << endl;
if (tab_pracownikow.size() == 0)
{
cout << "NA LISCIE NIE MA ZADNYCH PRACOWNIKOW" << endl << endl;
}
else
{
for (int i = 0; i<tab_pracownikow.size(); i++)
{
cout << "PRACOWNIK " << i + 1 << ":" << endl;
cout << "IMIE: " << tab_pracownikow[i].get_imie() << endl;
cout << "NAZWISKO: " << tab_pracownikow[i].get_nazwisko() << endl;
cout << "STANOWISKO: " << tab_pracownikow[i].get_stanowisko() << endl;
cout << "WIEK: " << tab_pracownikow[i].get_wiek() << endl << endl;
}
}
}
int main()
{
char input;
for (;;)
{
menu();
input = getchar();
switch (input)
{
case'1':
dodaj();
break;
case'2':
edytuj();
break;
case'3':
usun();
break;
case'4':
pokaz();
getchar();
cout << "ABY POWROCIC DO MENU, KLIKNIJ 'ENTER'.";
getchar();
break;
case'5':return 0;
}
}
}
tutaj moje nie działające wypociny C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Firma
{
public class worker
{
string imie, nazwisko, stanowisko;
int wiek;
List<worker> tab_worker = new List<worker>();
}
//public class ludzie
//{
// //public void DodajIm(worker imie)
// //{
// //pracownicy.Add(imie);
// //}
// //public void DodajNaz(worker nazwisko)
// //{
// // pracownicy.Add(nazwisko);
// //}
// //public void DodajsSan(worker stanowisko)
// //{
// // pracownicy.Add(stanowisko);
// //}
// //public void DodajWk(worker wiek)
// //{
// // pracownicy.Add(wiek);
// //}
//}
class Program
{
static void Main(string[] args)
{
worker pracownik = new worker();
Console.WriteLine("--PRACOWNICY W FIRMIE--");
Console.WriteLine("DODAJ NOWEGO PRACOWNIKA ---- PRESS(1)");
Console.WriteLine("EDYTUJ DANE ISTNIEJACEGO PRACOWNIKA ---- PRESS(2)");
Console.WriteLine("USUN PRACOWNIKA ---- PRESS(3)");
Console.WriteLine("WYSWIETL LISTE AKTUALNYCH PRACOWNIKOW ---- PRESS(4)");
Console.WriteLine("ZAMKNIJ PROGRAM ---- PRESS(5)");
Console.WriteLine("WYBIERZ NUMER CZYNNOSCI I KLIKNIJ ENTER...");
Console.ReadKey();
void dodawanie(worker pracownicy)
{
Console.WriteLine("PODAJ IMIE");
string imie = Console.ReadLine();
Console.WriteLine("PODAJ NAZWISKO");
string nazwisko = Console.ReadLine();
Console.WriteLine("PODAJ STANOWISKO");
string stanowisko = Console.ReadLine();
Console.WriteLine("PODAJ WIEK");
int wiek = int.Parse(Console.ReadLine());
}
void usuwanie()
{
Console.WriteLine("NUMER PRACOWNIKA DO USUNIECIA");
int nr = int.Parse(Console.ReadLine());
}
int i = int.Parse(Console.ReadLine());
int caseSwitch = i;
switch (caseSwitch)
{
case 1:
break;
case 2:
Console.WriteLine("edycja");
Console.ReadKey();
break;
case 3:
Console.WriteLine("PODAJ NUMER PRACOWNIKA DO USUNIECIA:");
Console.ReadKey();
break;
case 4:
Console.WriteLine("wyswietlanie");
Console.ReadKey();
break;
case 5:
Console.WriteLine("zakniecie progrmu");
Console.ReadKey();
return;
default:
Console.WriteLine("NIE MA TAKIEJ CZYNNOSCI");
Console.ReadKey();
break;
}
}
}
}