- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- bambano: Bambanő háza tája
- Gurulunk, WAZE?!
- gban: Ingyen kellene, de tegnapra
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Geri Bátyó: B550 szűk keresztmetszet, de mi és miért?
- Szoszo94: Xiaomi Mi Router 3G - Padavanra fel!
- Chosen: Canon 5D II - portrézás 2025-ben
Új hozzászólás Aktív témák
-
kkdesign
senior tag
Hali, köszi a segítséget a progimhoz
annyi amire még nem jövök rá jogy van egy ilyen kódrészlet:
string valtozo;
valtozo = Console.ReadLine();
try
{
Convert.ToInt32(valtozo);
}
catch
{
Console.WriteLine("Nem számot adtál meg, vagy túl nagy a szám");
}No az a túl nagy a szám akkor jön ki, ha végigírom számokkal a konzol 1 sorát teljesen és ugye az is szám csak túl nagy és átlép vele a catchbe de nem tudom miért, vagy mi lehet a gond, ezt kellene lekezelnem még, hogy azt is számnak nézze és ne menjen a catchbe. Vagy szimplán ezzel tudom csak megoldani hogy elkapatom a catch-el?
-
skydriver
csendes tag
s.o.s.
vba programozásom lesz holnap (word és excel) de teljes a homály.
keresek 1 olyan VBA specialistát, aki tudna nekem segíteni.
szóval arról lenne szó, hogy lesz 1-1 feladatom 1 óra időtartamban.ha valaki vállalná, hogy elküldöm neki a lefényképezett faladatot és 1 óra alatt nekem összekalapálja a megoldások felét és visszadobja 1 email címre, nem lennék hálátlan.
nagyon nem lennék hálátlan.................
pls help.............
skydriver@freemail.hu
-
martonx
veterán
Sziasztok!
Picit lehet összecsapnak a hullámok a fejem felett a maszek melókban. Van itt valaki, aki ASP.NET MVC-zést vállal kizárólag távmunkában, és sajnos nem sok pénzért? Lehet be kellene dolgozni hozzám. Ha van, akkor privátban beszéljük meg a részleteket.
-
Ezekiell
veterán
válasz
kkdesign #3991 üzenetére
Double.TryParse kell neked, vagy:
Nem kell kivételkezelés, egy sima if is megteszi:
if (Regex.IsMatch("124124125,1", @"^[1-9,]-*[0-9,\.]+$"))
{
// helyes szám
} else {
// nem helyes szám
}Ez a reguláris kifejezés C#-ban. Az alábbi oldalon tudod tesztelni a kifejezéseket: Rubular. A neked szükséges regexp a kódban van.
-
Jester01
veterán
válasz
kkdesign #3991 üzenetére
Ajánlom inkább a Double.TryParse metódust.
-
kkdesign
senior tag
-
kkdesign
senior tag
válasz
Jester01 #3985 üzenetére
elvetettem a tömbös megoldást, de most sem jutok el odáig, mi lehet a hiba. Nem tudom, hogy hogyan kell itt helyesen elhelyezni működőre a 2 számot
static void Main(string[] args)
{
double szam1=64;
double szam2=32;
Szamolo szObj = new Szamolo(szam1, szam2);
Console.WriteLine((double) szObj.Osszead(szam1, szam2)); // ide ad hibát: no overload for method readline takes 2 arguments
Console.ReadKey();
}
} -
kkdesign
senior tag
Üdv, egy egyszerű számológép szerű programot akarok írni, metódusokkal és osztályokkal. a Következőképp néz ki: ( a problémám az, hogy hogy tudom meghívni a különböző műveleteket a főprogramba ? )
namespace ConsoleApplication1
{
class Szamolo
{
private double szam_1 {get; set; }
private double szam_2 {get; set; }
public Szamolo(double sz_1, double sz_2) //konstruktor
{
szam_1 = sz_1;
szam_2 = sz_2;
}
public void Osszead()
{
double osszeaderedmeny = szam_1 + szam_2;
Console.WriteLine("Összeadás után az eredmény: {0}", osszeaderedmeny);
}
public void Kivon()
{
double kivoneredmeny = szam_1 - szam_2;
Console.WriteLine("Kivonás után az eredmény: {0}", kivoneredmeny);
}
public void Szoroz()
{
double szorozeredmeny = szam_1 * szam_2;
Console.WriteLine("Szorzás után az eredmény: {0}", szorozeredmeny);
}
public void Oszt()
{
double oszteredmeny = szam_1 / szam_2;
Console.WriteLine("Osztás után az eredmény: {0}", oszteredmeny);
}
}
class Program
{
static void Main(string[] args)
{
double[] szamok = new double[2];
Console.WriteLine("Kérem az első számot!");
double szam1;
szam1 = double.Parse(Console.ReadLine());
szam1 = szamok[0];
Console.WriteLine("Kérem a második számot!");
double szam2;
szam2 = double.Parse(Console.ReadLine());
szam2 = szamok[1];
Szamolo szObj = new Szamolo(szam1, szam2);
szObj.Osszead(); //ez rossz de hogy kell meghívni jól ??
Console.ReadKey();
}
}
} -
sztanozs
veterán
Test forgatásához forgatómátrixot (wiki + 1, 2) kell használni - ennek aktuális értékeit tudod a csúszkákkal állítani és a test aktuális pontjaiból tudod számolni vele a következő állapotot. A feladat a test pontjainak (mint vektoroknak) megszorzása a forgatómátrixxal.
Gondolom a test koordinátái valahol el vannak tárolva, a forgytás szögeit pedig az adott csúszkák change eseményének lekezelésével tudod változtatni.
-
Peter Kiss
őstag
Van egy zsák eseménye, valamelyik lekezelése segíthet, pl. a ValueChanged.
-
Atos23
senior tag
Halihó!
Gyerekfeladatokat csinálok fősulin, és egy apró problémával szembesültem, ami az alap angolom miatt nem Google-kompatibilis.
Egyszerű feladatunk van, egy Windows Formban kockát kell forgatni, és közben a forgatás szögeit Trackbarral szükséges változtatni.
A trackbarral beállítom a kívánt paramétert, az Indítás buttonra nyomok, és öröm-öröm bódottá, működik.
De személyes érdeklődésből ezt szeretném megoldani: Ha már elindítottam az adott paraméterrel a programot, a form futása közben szeretném huzigálni a trackbar-t, és az így kiválasztott új value-val fusson tovább a program. Úgy érzem, ez nehezen megoldható, hiszen ekkor el kell tárolnom az objektum aktuális paramétereit, így ezt nem is erőltetem.Ezért megelégednék egy olyan megoldással is, ahol a form futása közben a trackbar (vagy éppen egy radiobutton, vagy checkbox) állítható, és az új kiválasztott értékkel indul újra a program. Tud ilyet a Visual?
Van ötletetek?private void button1_Click(object sender, EventArgs e)
{for (int q = 1; q <= 500; q++)
{
Invalidate();
Update();
Rajzol();
System.Threading.Thread.Sleep(100);
alphax = alphax + 0.01f;
alphay = alphay + 0.01f;
alphaz = alphaz + 0.01f;}
Close();
} -
j0k3r!
őstag
válasz
S0m30n3 #3977 üzenetére
hello!
amit en ajanlanek az a Reiter könyv + msdn
-
S0m30n3
aktív tag
Üdv emberek!
Elkezdenék C#-ot tanulni (eddig C-t tanultam, abból is csak az alapokat) és az lenne a kérdésem, hogy melyik könyvet ajánljátok? Szeretnék elmerülni a nyelvben, szóval egy részletes, jól magyarázó könyv lenne a legjobb számomra (, ugyanakkor rövidebb könyvet is ajánlhattok, amiből a dolgok alapjait gyorsan megtanulhatom). Angolul tudok, de szerintem többet érnék, ha magyar lenne az anyag, úgy mégis csak biztosabb. (persze azért angolt is írhattok, hátha mégis jól értem). Köszönöm előre is a válaszokat!
-
amargo
addikt
Mindenki figyelmébe ajánlom adatszerkezeti témában.
Egy rosszul megválasztott adatszerkezettel bizony a program futási idejét több nagyságrenddel is megdobhatja. Mivel tudom, hogy vannak kollégáim is, akik hiába jártak főiskolára, egyetemre bőven eltudják követni a hibás adatszerkezet kiválasztását, ezért is linkeltem át ide is, főként a vizsgázóknak szánva
-
sztanozs
veterán
válasz
martonx #3974 üzenetére
Nem a színvonal esik, hanem már sokkal többen tudnak azok közül kérdéseket feltenni, akik nem értenek az adott témához... 10-15 évvel ezelőtt, ha az ember nem tudott hozzájutni a minimális információkhoz egyszerűen bele sem kezdett egy ilyen témába - ha meg muszáj volt, akkor legfeljebb fizett érte. Ma persze a neten bármilyen segítség elérhető és potenciálisan az embernek bármit meg is csinálnak ingyen, hacsak nem tegnapra kell.
Szóval szerintem nincs több hozzá nem értő ember, mint azelőtt, csak anno a hozzá nem értők nem tudták hol feltenni a kérdéseiket. No ezért tartunk ott, ahol. -
fatal`
titán
válasz
goodluckbenc #3969 üzenetére
És ennek mi köze a C#-hoz?
-
Peter Kiss
őstag
válasz
goodluckbenc #3969 üzenetére
Nem.
-
goodluckbenc
csendes tag
tudna valaki segiteni, egy programot kell irnom ami 1234-et mutat ezt csinaltam eddig de nem akar mukodni.
/*************************************************************************
* A Program for the 7-Segmen Display Module – Task 4 **************************************************************************/
#include <reg51.h>
#include <string.h>
/* Declaration of the Data and Clock Bits for the M5450 */
sbit Data = P1^4 ;
sbit Clock = P1^6 ;
//sbit Enable = ? ; /* Only on some Modules but not all */
/* A very short Delay of about 10 microseconds */
/* This doesn’t have to be accurate as explained in the lecture classes */
void M5450_Delay(void)
{
int i;
for (i=0;i<10000; i++)
{
;
}
}
void M5450_Pulse(void)
{
/* This function sends a single clock pulse to the M5450 Driver */
Clock=0;
Clock=1;
M5450_Delay(); /* A short Delay */
Clock=0;
}
void M5450_Send (void)
{
int D0,D1,D2,D3;/* This function sends the 8-bit (byte) D to the M5450 in serial form */
/* with the least significant bit first */
D0=0x66;
D1=0x4F;
D2=0x5B;
D3=0x06;}
/* The following function sends a start pulse to the M5450 */
void M5450_Start(void)
{
//Enable = 0; /* Eliminate this line if there is no Enable pin defined */
Data = 0;
M5450_Pulse();
Data = 1;
M5450_Pulse();
}
/* The Main Program */
void main (void)
{
/* Declaration of all local variables in the main part of the program */
/* First Send a Start Pulse to the M5450 */
M5450_Start();
for(;
{
M5450_Send(0x66);
M5450_Send(0x4F);
M5450_Send(0x5B);
M5450_Send(0x06);
/* Send a further Three Clock Pulses to Complete the 35 Pulses */
M5450_Pulse();
M5450_Pulse();
M5450_Pulse();
} -
Köszönöm mindenkinek a segítséget!
Üdv. core2
-
vlevi
nagyúr
válasz
Peter Kiss #3966 üzenetére
Igazad van, kipróbáltam, tényleg így van.
-
Peter Kiss
őstag
double keres = 22;
Termek talalat = (from x in Termekek where x.Ertek == keres select x).First();
if (talalat == null)
{
Console.WriteLine("Nincs találat");
}
else {
Console.WriteLine("Találat {0} {1} ", talalat.Nev,talalat.Suly);
}Ha nincs találat, akkor nem null lesz az eredmény, hanem egy szép exception, ezért:
var talalat = Termekek.FirstOrDefault(x => x.Ertek == keres);
-
vlevi
nagyúr
válasz
Neil Watts #3964 üzenetére
Hát, igen, ilyenekre van a Linq, hogy az ember ne az ilyen kereső, sorrendező, satöbbi kódokra pazarolja az energiát.
De ha ez egy suli feladat, akkor gondolom a tanár nem venné jó néven az ilyenfajta megoldástusing System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Termekkereso
{
class Termek
{
internal double Ertek;
internal double Suly;
internal string Nev;
}
class Program
{
static void Main(string[] args)
{
Termek[] Termekek =
{
new Termek { Ertek = 10, Suly = 5, Nev = "lila" },
new Termek { Ertek = 15, Suly = 22, Nev = "lila" },
new Termek { Ertek = 20, Suly = 4, Nev = "lila" },
new Termek { Ertek = 22, Suly = 15, Nev = "Joli" },
new Termek { Ertek = 27, Suly = 7, Nev = "Joli" },
new Termek { Ertek = 30, Suly = 59, Nev = "Joli" },
new Termek { Ertek = 40, Suly = 9, Nev = "karton" },
new Termek { Ertek = 45, Suly = 1, Nev = "karton" }
};
double keres = 22;
Termek talalat = (from x in Termekek where x.Ertek == keres select x).First();
if (talalat == null)
{
Console.WriteLine("Nincs találat");
}
else {
Console.WriteLine("Találat {0} {1} ", talalat.Nev,talalat.Suly);
}
Console.ReadLine();
}
}
} -
Peter Kiss
őstag
válasz
Neil Watts #3954 üzenetére
Ilyet hol a viharba' csinálnak?
StreamReader sr = new StreamReader(@"termek.txt");
Itt marad az idők végezetéig, vagy mi?
Plusz a rendezésekhez, keresésekhez miért nem lehet használni az IEnumerable<T> extension-öket? Még a végén olvasható lesz, mit is akarsz csinálni? Mert a kézi legózás nem lesz gyorsabb ennél ebben a formájában az biztos.
-
-
Jester01
veterán
válasz
Neil Watts #3960 üzenetére
Ott az a foreach amit mutattál, tegyél bele egy if-et hogy a nullásat/üreset ne tegye bele.
-
-
Jester01
veterán
válasz
Neil Watts #3958 üzenetére
Igen, ez az egész tömböt rendezi. Esetedben a legegyszerűbb ha a listbox-ba pakoláskor ezeket kiszűröd.
Alternatív lehetőség másik Array.Sort overload használata vagy LINQ Take+OrderBy.
Persze az is kérdés, hogy miért van tömböd List helyett. -
Jester01
veterán
válasz
Neil Watts #3956 üzenetére
Ez valóban struct tömb, de a függvényed int tömböt vár. A ref-et pedig a hívásból és a függvényből is ki kell szedni. Itt pedig egy példa Array.Sort használatával.
-
Jester01
veterán
válasz
Neil Watts #3954 üzenetére
Mivel magát tömböt nem módosítod csak az elemeket, így nem kell a ref.
Ha nincs kikötés a kézi rendezésre akkor persze ott vannak a beépített függvények mint például az Array.Sort.Viszont amit írtál az nem struct-ból van, csak szólok
-
-
j0k3r!
őstag
válasz
sztanozs #3949 üzenetére
szerintem az orai feladatokban nem a solution file-okat (*.sln) nyitotta meg, hanem a class file-okat (*.cs), aztan ugye a vs tenyleg berakja a .cs filet uj tabban az aktualis projecthez, ez meg ugy is nezhet ki, mintha a projecthez tartozna az adott file, kozben meg semmi koze nincs hozza, de ez csak tipp
-
Brianiac
aktív tag
Na megvan a hiba..
Igen, ennél tényleg az volt a baj, hogy nem volt hozzá adva a projecthez... Az előzőnél meg az h a main tényleg kicsivel volt írva, aztán bezavart most, hogy két különböző kódnál is ugyanaz volt a baj, csak a gond nem ugyanott volt. Köszi a segítséget mindenkinek!
-
Brianiac
aktív tag
Bemásoltam, az első elírás azért van mert azt nem a fordítóból másoltam, a kódban pedig nem tom miért van elírva, helyesen van egyébként már, de így is azt írja... Kép
Ez már egy másik kód lenne, de ugyanaz a baja, órai gyakorlatok anyaga egyébként, csak most gyakorlok, mert nem sikerült mindig bemennem.
-
amargo
addikt
válasz
Brianiac #3940 üzenetére
Ezt csak úgy beírtad vagy miként hoztad össze?
Csak azért kérdem, mert 2x is ellett írva a Main, ami case sensitive, azaz kisbetű nagybetű érzékeny - ahogy minden más is.
Azért érdekes, mert a fordító ordibál is, hogy a Main belépést nem találja és persze itt is elírtad persze, ezért nem tűnt fel.. de nem értem, ennyire figyelmetlen voltál vagy csak nem ismerős a kifejezés? -
Brianiac
aktív tag
Hali!
Valaki tudna segíteni, hogy az alábbi kódnak mi lehet a baja? Nem fut le, a VS 2010 az alábbi üzit dobja: does not contain a static 'main' method suitable for an entry point
Nem értem miért, meg h mi baja lehet..using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace prog3
{
class gyak5_1
{
static void main(string[] args)
{
lotto k = new lotto();
Console.WriteLine("A kihúzott számok: ");
k.kiir();
}
}
}A lotto osztály természetesen megvan írva hozzá, esetleg bemásolhatom azt is ha szükséges.
-
mttssz
senior tag
Sziasztok!
Eléggé kezdő vagyok még, pár napja álltam neki a C#-nak, és elakadtam egy feladatban.
Az lenne a lényeg, hogy egy billentyűleütésre (konkrétan a D lenne az), végrehajtódjon egy feladat. Ezt ezzel próbáltam elérni:private void frmMoverMain_KeyDown(object sender, KeyEventArgs e)
{
if (Control.ModifierKeys == Keys.Shift)
{De ez csakis akkor működik, ha a Shift, Ctrl vagy Alt gombokat adom meg, nekem viszont nem azt kellene. Hogyan tudnám elérni hogy működjön?
A türelmet és a segítséget előre is köszönöm.
-
Jester01
veterán
Kell pár ciklus ami végigmegy a sorokon/oszlopokon és jól összeadja az elemeket.
Állításod szerint a kiírás már megy, ahhoz meg pont ugyanúgy ciklusban kellett bejárni az elemeket ... akkor itt mi a baj?A sorösszegeket elég az aktuális sorra nyilvántartani, az oszlopösszegeket egy tömbben kell tárolni és a végén külön kiírni. A formázáshoz pedig {0,10
2} formátumot kell használni (ezt msdnből fél perc kinézni).
Ha a beolvasás már megvan, akkor például ilyesmi lehet:
double grandtotal = 0;
double[] coltotals = new double[data.GetLength(1)];
for(int row = 0; row < data.GetLength(0); row += 1)
{
double rowtotal = 0;
for(int col = 0; col < data.GetLength(1); col += 1)
{
coltotals[col] += data[row, col];
rowtotal += data[row, col];
Console.Write("{0,10:F2}", data[row, col]);
}
grandtotal += rowtotal;
Console.WriteLine("|{0,10:F2}", rowtotal);
}
for(int col = 0; col < data.GetLength(1); col += 1)
{
Console.Write("{0,10:F2}", coltotals[col]);
}
Console.WriteLine("|{0,10:F2}", grandtotal);geresics: elnézted a topikot, ez itt C# nem C
-
Geresics
addikt
Hali!
Kicsit későn állok neki a Prog I. háziknak, ezért szükségem lenne egy kis segítségre!
A tömb feltöltését és kinyomtatását már megcsináltam, de az oszlopok felcserélése még hátravan.
A nagyobb problémám az, hogy hogy csinálok különálló függvényeket?/* Írja meg a tömb kezelő programot olyan módon,
hogy a tömb a main függvényben legyen definiálva
és minden egyéb műveletet egy külön függvény tartalmazzon.
Például a beolvasás, keresés, számítás mindegyik egy külön függvénybe kerüljön! */
/* Töltsünk fel egy 5x5-es integer mátrixot futási időben!
Ezután olvassunk be még két egész számot 0 és 4 között.
Végül a program cserélje fel a két egész számmal megadott oszlop elemeit.
Nyomtassuk ki az eredményt. */
#include <stdio.h>
#include <stdlib.h>
void main()
{
int a[5][5];
int i, j; /* i lesz az oszlop száma */
int szam1, szam2, mem;
/* beolvasás */
printf("\nAdja meg az 5x5-os tomb elemeit! Minden elem utan usson ENTER-t!\n");
for(i=0; i<5; i++)
{
for(j=0; j<5; j++)
{
printf("Soron kovetkezo elem: ");
scanf("%d", &a[i][j]);
}
}
/* két szám beolvasása */
printf("\nAdjon meg egy szamot 0 es 4 kozott: ");
scanf("%d", &szam1);
printf("Adjon meg egy masik szamot 0 es 4 kozott: ");
scanf("%d", &szam2);
/* két oszlop megcserélése */
/* a következő algoritmust találtam ki, de még nem írtam meg:
a[0][szam1]==mem;
a[0][szam2]==a[0][szam1];
mem==a[0][szam2];
mem=0;
*/
/* nyomtatás */
for(i=0; i<5; i++)
{
for(j=0; j<5; j++)
{
printf("\nA(z) %d oszlop %d. eleme: [%d]", i+1, j+1, a[j][i]);
}
}
} -
Joci93
senior tag
válasz
Jester01 #3929 üzenetére
Pontosan valahol itt:
"A listában összegezze a sorokat, az oszlopokat és számítsa ki a főösszeget is.
Minden számot 10 széles mezőben 2 tizedesjeggyel írjon ki."vlevi: "Jó, tudom, hogy az a sorok és oszlopok száma" Igen, az az első két szám a sorok és oszlopok száma. Szerintem két külön szám vagy szívat a tanár xD
-
vlevi
nagyúr
Megmondom az őszintét, nem értem a feladatot
Az output minta teljesen összezavart.
Mert, ha ki kell írni a sorok, az oszlopok összesenjét, az az output állományban max két sor, plusz 1 a végösszeg, és kész, valami ilyesmi"110,85 150,25 383,54 96,43 -40,29 -135,52 96,99 24,10
19,60 121,07 545,68
686,35
"
És, ha már 10 karakter szélesen kell, akkor a mintában miért nem úgy van?
Külön szopatás jelleggel van tört szám az első sorban?
Jó, tudom, hogy az a sorok és oszlopok száma, de ha már a táblázatban szóközzel vannak elválasztva a számok, akkor joggal feltételezhetném, hogy ez is egy tört szám, és nem kettő
Szóval mehet a házi feladat kiadás javításra -
Joci93
senior tag
Sziasztok!
Kezdő C# tanuló vagyok és kaptunk egy olyan házi feladatot a tanártól, amit még nem is vettünk....
A feladat a következő lenne:
"Készítsen C# konzol alkalmazást.
Olvassa be a mellékelt fájlban levő két dimenziós táblázatot, és a jelen levélben levő minta szerint listázza!
A mellékelt file első sorában vesszővel elválasztva a táblázat sorainak és oszlopainak száma van.
Hozza létre a megadott méretű double tömböt, olvassa be az adatokat.
A listában összegezze a sorokat, az oszlopokat és számítsa ki a főösszeget is.
Minden számot 10 széles mezőben 2 tizedesjeggyel írjon ki.
A listafilet az input file neve alapján a következő minta szerint nevezze el:
tabla32.txt input fájl esetén tabla32osszeg.txt legyen.
A táblázat után írja ki az Ön nevét."Ez van a mellékelt file-ban:
"8,3
-133,69 57,31 187,23
60,57 67,89 21,79
156,20 78,13 149,21
-116,37 66,80 146,00
26,86 -117,48 50,33
-66,37 -107,64 38,49
24,02 29,72 43,25
68,38 46,34 -90,62"output minta:
" -323,70 82,66 331,48 399,72 -408,83| 81,33
182,70 -46,87 342,36 73,05 313,75| 864,99
420,01 401,87 -47,59 265,73 161,88| 1201,90
--------------------------------------------------|----------
279,01 437,66 626,25 738,50 66,80| 2148,22
Készítette: "Már megrendeltem egy könyvet, aminek a címe "C# mesteri szinten 21 nap alatt". Remélem, hogy abból is lehet sokat tanulni, mert amit ez a tanár művel az leírhatatlan...
Nagyon megköszönném, ha valaki esetleg lépésről lépésre leírná, hogy hogyan kell megoldani, mert nekem egyszerűen nem megy.
"Olvassa be a mellékelt fájlban levő két dimenziós táblázatot, és a jelen levélben levő minta szerint listázza!"
Ennyi megy, mert ezt már tanultuk.
Köszönöm -
vlevi
nagyúr
Ahogy előttem írák, nem kell létrehozni előre fix mérettel a tömböt.
static void Main(string[] args)
{
int[] tomb;
Console.Write("Tömb mérere? :");
string s= Console.ReadLine();
int meret = int.Parse(s);
tomb = new int[meret];
Random veletlen = new Random();
for (int i = 0; i < tomb.Length; i++)
{
tomb[i] = veletlen.Next(10,100);
}
foreach (var item in tomb){
Console.WriteLine(item);
}
Console.ReadLine();
}Másik dolog, hogy programozástechnikailag nagyon csúnya és veszélyes hogy bekéréskor nem egy függvény adja vissza a bekért számot, hanem valahol beállít egy változót.
-
Zedz
addikt
Hali!
Ismét problémába ütköztem, és egyszerűen nem értem mi a gond. A feladat az lenne, hogy a billentyűzetről bekért szám legyen a tömb mérete. Ha beírok egy számot, pár sorral lejjebb ugrik a kurzor, de nem írja ki az N db random számot. Mi lehet a baj? :S Kód
-
sztanozs
veterán
Array felett lehet foreach-elni, de a visszaadott értékek readonly-k lesznek...
Amúgy még for-ban is lehet tömbméretet változtani - persze nem c#-ban, hanem vb.net-ben (Redim Preserve). Sőt most látom, hogy végülis c#-ban is megoldgható, csak nem utasítással, hanem metódussal:
Array.Resize(ref arr, size); -
fatal`
titán
válasz
Neil Watts #3916 üzenetére
"Megnéztem a kódodat most, s vannak benne érdekességek. tömböt forral az életben nem fogsz tudni feltölteni."
Hogy micsoda? Miért is?
-
-
Zedz
addikt
válasz
Neil Watts #3916 üzenetére
Nem akkor kell for amikor előre tudjuk, hogy mennyi lépésszámra van szükség? Legalábbis nekem így tantják, hogy a while csak akkor kell ha nem tudjuk meddig fog futni a ciklus.
-
Karma
félisten
válasz
Neil Watts #3916 üzenetére
"Megnéztem a kódodat most, s vannak benne érdekességek. tömböt forral az életben nem fogsz tudni feltölteni. While, s int elemszam bevezetése ajánlott véleményem szerint. "
Ezt kifejthetnéd kicsit, mert innnen nézve eléggé a valóságtól elrugaszkodott kijelentés és tanács.
-
Szia!
Persze hogy rossz, túlindexeled a tömböt.
a t[0] rakd ki, hogy mindig az maradjon az értéke, utána pedig 1-tól indítsd a ciklust. Nincs előttem most VS, de ennek így menni kéne elvileg.Megnéztem a kódodat most, s vannak benne érdekességek. tömböt forral az életben nem fogsz tudni feltölteni. While, s int elemszam bevezetése ajánlott véleményem szerint.
Üdv. core2
-
Karma
félisten
A ciklusodat 0-tól 49-ig járatod (ezek a tömb érvényes indexei is egyébként), de belül t[i+1]-et írtál, ami az utolsó lépésben 50 -> robban a túlindexelés. A javításhoz a ciklust ne nullától, hanem 1-től indítsd ugyanígy, és tüntesd el a +1-et; ahogy Athlon64+ is megírta.
Másrészt t[0]-t minden lépésben beállítod, teljesen felesleges (bár nem okoz hibát). Harmadrészt ne legyen büdös a debuggert használni, azonnal látszik az Exception eldobódásánál, hogy milyen i érték mellett történt a robbanás.
-
Zedz
addikt
Sziasztok!
Azt hogyan tudnám megcsinálni, hogy egy 50 elemű tömb első tagja billentyűzetről bevihető legyen, a maradék 49-et pedig random generálja -10 és 8 között?
Ez így rossz?
t[0] = int.Parse(Console.ReadLine());
t[i+1] = rnd.Next(a, f);Mindig ezt a hibaüzenetet kapom: Index was outside the bounds of the array.
-
xxSanchez
őstag
válasz
xKacsax #3909 üzenetére
Ebből már ki fogsz tudni indulni: Teljes projekt
-
xKacsax
aktív tag
Hello, azt szeretném kérdezni hogy lehet-e olyan WFA-t készíteni amiben betallózok vele X mennyiségű fájlt (képet) és erről készít nekem egy olyan statikus html oldalt amiben már előre megvannak adva a dolgok (arra gondolok itt hogy "fotóalbum" kinézetben thumbnail képeket pakol be amiket kattintásra felnagyít. A HTML-ben alkalmazni amolyan objektum linkeket mint mondjuk egy körlevél készítésénél, és hogy hogyan tudom azt úgy belőni hogy több fájlt tallózzon be a filedialogból majd a végén pedig generáljon nekem egy HTML page-t ??
Válaszokat előre is köszi, remélem valamennyire érthetően fogalmaztam.
-
j0k3r!
őstag
mutasd mar meg, hogy eddig mire jutottal. ide rakd mar fel a kododat, hogy lassuk az osztalyokat. linq-val ketsegtelenul rovidebb lenne a dolog, de "hagyomanyos" modszerrel is megoldhato persze.
"igazából egy sulis feladatról van szó; a linq láttán lehet hanyatt esne a tanár, sajna még a list-eket sem vettük, csak így véltem könnyen megvalósíthatónak, lehet így is "magyarázhatom majd a bizonyítványom", nem könnyű így "félig megkötött" kézzel" - nem kell foglalkozni vele, inkabb orulne a tanar, hogy utanaolvasol az ilyen dolgoknak, es haladsz a korral. martonx-et tudnam idezni:
"Ha már tanulunk, akkor tanuljunk újdonságokat is" -
G3kko
tag
igen, minden albumon le kellene kérni a 3 legrövidebb, valamint 3 leghosszabb szám összegét; majd ezeket 10-es tömbökben tárolni (legalábbis így gondoltam), ahogy megvan egy érték úgy menne az adott tömb annyiadik elemének helyére, ahányadik albumhoz tartozik. Így végül lenne két 10-es tömb, a cd-k min és max értékekeivel. Innen már egy maximum kereséssel, a maximum értékek tömbjén, illetve egy minimum kereséssel a minimumok tömbjén, meg lehetne határozni azt, hogy melyik albumon áll össze a legrövidebb és melyiken a leghosszabb számhármas.
igazából egy sulis feladatról van szó; a linq láttán lehet hanyatt esne a tanár, sajna még a list-eket sem vettük, csak így véltem könnyen megvalósíthatónak, lehet így is "magyarázhatom majd a bizonyítványom", nem könnyű így "félig megkötött" kézzel
-
j0k3r!
őstag
hello!
szoval van 10 albumod, albumonkent 10 szammal. a feladat az, hogy minden albumon a 3 legrovidebb szam hosszanak az osszeget lekerd, es elmentsd egy tombbe (jelen esetben 10 elemu)?
"végül, a tízes tömbökben (cd-k minimum értékei, maximum értékei), min, max keresés; és az adott index+1, megadja az album id-jét." - ezt fejtsd mar ki egy kicsit. a minimum es maximum ertek a legrovidebb, illetve a leghosszabb szamot jelenti?
egyebkent igy lattatlanban a linq az, amit keresel. ennek a segitsegevel pofonegyszeruen tudsz rendezni, minimumot, maximumot keresni, stb..
-
G3kko
tag
sziasztok!
egy feladat során az alábbi problémába futottam:
adott 10 cd, mindegyiken 10 szám; (a cd-k példányosítva lettek, a számok random értékűek)feladat: az összes cd-t figyelembe véve, meg kellene határozni, a minimum, illetve, maximum hosszúságú számhármasokat; azt, hogy melyik cd-ről állnak elő.
A terv az volt, hogy egy listába betölti az első cd-t; elvégzi a vizsgálatot, majd ugrik a következő cd-re. (szerk: for)
vizsgálat: a listában legkisebb elemet megkeresi, eltárolja; majd az adott elemet eltávolítja a listáról, aztán mindezt megint kétszer, ezen futások közben kapott értékeket hozzáadja, az előzőleg kapottakhoz. Így megvan az adott cd-n 3 (minimum) szám alapján létrehozható minimum intervallum összege. Ezt egy tízes tömb első elemének értékül adja. Ezek után jöhet a következő lista betöltése, azaz a 2-es cd. (hasonlóan járna el a maximumok esetében, persze max kereséssel)
végül, a tízes tömbökben (cd-k minimum értékei, maximum értékei), min, max keresés; és az adott index+1, megadja az album id-jét.
már az elején elakadtam, mégpedig: hogyan tudom elérni azt, hogy a lista csak az adott, soron következő cd 10 számát tartalmazza, amíg lemegy azon a vizsgálat?
Igyekeztem érthetően leírni a fentieket, ha valahol valami félreérthető, nem világos, szóljatok; előre is köszönöm a segítséget! (bocs, hogy ilyen hosszú lett)
-
xKacsax
aktív tag
Hmm, elnézést a tudatlanságomért, 3 napja kezdtem el C#-ozni.
Na most pedig az a helyzet állt elő hogy így már működik, de az ablak egy aboutbox aminek a beállításai (színek,méretek,kép) az enyémek csak ami az adatmezőkbe lett beírva (mint a gomboknál) ott nem az én szövegeim szerepelnek. Miért van ez ?
Új hozzászólás Aktív témák
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Le Mans Ultimate
- TCL LCD és LED TV-k
- Samsung Galaxy S24 - nos, Exynos
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Androidos fejegységek
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- OFF TOPIC 44 - Te mondd, hogy offtopic, a te hangod mélyebb!
- BestBuy ruhás topik
- Redmi Note 13 Pro 5G - nem százas, kétszázas!
- További aktív témák...
- Azonnali készpénzes AMD Ryzen 1xxx 2xxx 3xxx 5xxx processzor felvásárlás személyesen / csomagküldés
- Lenovo ThinkPad 40AF docking station (DisplayLink)
- BESZÁMÍTÁS! VALVE Steam Deck LCD 1TB SSD kézikonzol garanciával hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7800X3D 32/64GB RAM RX 9070 16GB GAMER PC termékbeszámítással
- HPE Apollo 4200 Gen9 2U rack szerver, 1x E5-2620v4, 64GB RAM, 24x3.5" 2U-ban! ÁFA-s számla, garancia
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: CAMERA-PRO Hungary Kft
Város: Budapest