Diszkek_listaja[i]. Film_keres (f). Cim akkarom elérni de sajna ez igy nem megy, hogytudnám elérni?
feladat: [link]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace husveti_lecke
{
enum csatlakozas { ATA, SATA, SATA2, SATA3 }
class FILM
{
#region mezok
string _cim;
int _hosz;
bool _HD_minoseg;
int _meret;
#endregion
#region popertyk
public string cim
{
get
{
return _cim;
}
set
{
if (value == null)
{
throw new Exception("hibacim1");
}
else
{
if ((value.Length >= 5) && (value.Length <= 100))
{
_cim = value;
}
else
{
throw new Exception("hibacim2");
}
}
}
}
public int hosz
{
get
{
return _hosz;
}
set
{
if ((value >= 10) && (value <= 400))
{
_hosz = value;
}
else
{
throw new Exception("hibahosz");
}
}
}
public bool HD_minoseg
{
get
{
return _HD_minoseg;
}
set
{
_HD_minoseg = value;
}
}
public int meret
{
get
{
return _meret;
}
private set
{
_meret = value;
}
}
#endregion
#region konstruktorai
public FILM(string cim, int hosz, bool HD_minoseg, int meret)
{
this.cim = cim;
this.hosz = hosz;
this.HD_minoseg = HD_minoseg;
this.meret = meret;
}
public FILM(string cim, int hosz)
{
this.cim = cim;
this.hosz = hosz;
var rnd = new Random();
this.HD_minoseg = false;
this.meret = rnd.Next();
}
#endregion
}
class DISZK
{
#region mezok
int _meret;
csatlakozas _csatlakozas;
int _szabad_meret;
List<FILM> filmek_listaja=new List<FILM>();
#endregion
#region popertyk
public int meret
{
get
{
return _meret;
}
private set
{
if ((value >= 100) && (value <= 5000))
{
if (value % 20 == 0)
{
_meret = value;
}
else
{
throw new Exception("hiba meret2");
}
}
else
{
throw new Exception("hibameret1");
}
}
}
public csatlakozas csatlakozas
{
get
{
return _csatlakozas;
}
private set
{
_csatlakozas = value;
}
}
public int szabad_meret
{
get
{
return _szabad_meret;
}
private set
{
_szabad_meret = value;
}
}
#endregion
#region konstruktorok
public DISZK(int meret, csatlakozas csatlakozas)
{
this.meret = meret;
this.csatlakozas = csatlakozas;
this.szabad_meret = meret;
}
#endregion
#region metodusok
public void film_hozadasa(FILM f)
{
int sum=0;
for (int i = 0; i < filmek_listaja.Count; i++)
{
sum=sum+filmek_listaja[i].meret;
}
for (int i = 0; i < filmek_listaja.Count; i++)
{
if ((f.cim != filmek_listaja[i].cim)&&(sum+f.meret>szabad_meret))
{
filmek_listaja.Add(f);
szabad_meret = szabad_meret - f.meret;
}
}
}
public bool torol(FILM f)
{
for (int i = 0; i < filmek_listaja.Count; i++)
{
if (f.cim == filmek_listaja[i].cim)
{
filmek_listaja.RemoveAt(i);
return true;
}
}
return false;
}
public FILM film_keres(FILM f)
{
for (int i = 0; i < filmek_listaja.Count; i++)
{
if (f.cim == filmek_listaja[i].cim)
{
return filmek_listaja[i];
}
}
return null;
}
#endregion
}
class NAS
{
#region mezok
int _maximum_diszkek_szama;
List<DISZK> diszkek_listaja = new List<DISZK>();
int _szabad_kapacitas;
#endregion
#region popertyk
public int maximum_diszkek_szama
{
get
{
return _maximum_diszkek_szama;
}
set
{
if ((value >= 2) && (value <= 10))
{
_maximum_diszkek_szama = value;
}
else
{
throw new Exception("hibamaximumdiszkekszama");
}
}
}
public int szabad_kapacitas
{
get
{
return _szabad_kapacitas;
}
private set
{
_szabad_kapacitas = value;
}
}
#endregion
#region konstruktorok
#endregion
#region metodusok
public FILM film_lejatszasa(FILM f)
{
for (int i = 0; i < diszkek_listaja.Count; i++)
{
if (diszkek_listaja[i].film_keres(f))
}
}
#endregion
}
class Program
{
static void Main(string[] args)
{
}
}
}
A kérdésem:
hogy tudok diszkek listjájának i-edik filmek listájának a iedik filmjének cimére hivatkozni. gondoltam használom a diszk filmkeresö fügvényét s beirom a kereset film cimét
(diszkek_listaja[i].film_keres(f)) az if utasitásba de sajna ez nem jöt össze s más ötletem nincs pedig kéne a nas osztályának a film lehátszása fögvényéhez. it ful elakadtan nemtudom elérni a diszkek listájában lévö filmek listájának iedik film cimeit.
több indexel meg nem megy mert nincs öröklési kapcsolat hogy speciális list hoszuk alapján végigdaráljam
ez lene az az aproság
film>filmlista>diszk lista
s diszklistán keresztűl kéne a film.cimet elérni de nincs öröklödés
igy hivatkozni rájuk nehéz
remélem sikerűlt problémám gyökerét kifejteni.
Igen, sikerült.
A probléma gyökere, hogy még a magyar nyelv sem igazán megy, hogyan is akarhatnál így egy programozási nyelvet megtanulni?
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!