Hirdetés
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Szólánc.
- Brogyi: CTEK akkumulátor töltő és másolatai
- Lalikiraly: Mercis kalandok - Huszonnyolcadik rész - Az újrakezdés
- Lalikiraly: Macbook NEO 2
- Gurulunk, WAZE?!
- MasterDeeJay: Intel Optane M10: mire lehet használni?
- creation: Elég lett abból, hogy a nagy gépeim nem képesek behúzni a filamentet
-
LOGOUT

Új hozzászólás Aktív témák
-
válasz
barnam_
#3316
üzenetére
Azóta sikerült megcsinálnom

Viszont akadt egy kis problémám, vagyis egy figyelmeztetés, amit el kellene tüntetnem.
Ha 0-t adok meg az 1. változónak, működik a program, de ezt kapom:Use of uninitialized value in concatenation (.) or string at ./feladat5.sh line 28, <STDIN> line 4.
Annyit kiderítettem, hogy valami Define-t kellene használnom, de semmit se találtam arról, hogyan kellene használnom.
#!/usr/bin/perl -w
print "elso:\n";
$szam1=<STDIN>;
chomp $szam1;
print "diff:\n";
$diff=<STDIN>;
chomp $diff;
print "hanyadik elemeket:\n";
$elem=<STDIN>;
chomp $elem;
print "osszesen mennyi elemet:\n";
$osszes=<STDIN>;
chomp $osszes;
$hatar=$diff * $osszes * $elem;
for ($i=$szam1; $i<$hatar; $i=$i + $diff)
{
@list=(@list, $i);
}
$size=@list;
for ($i=0; $i<=$size; $i=$i + $elem)
{
print "$list[$i] ";
}
print "\n"; -
Most itt tartok:
$n=-1;
for ( $i=$szam1; $i <= $szam2; $i=$i+1 )
{
@list=$i;
$size=@list;
for ( $b=0; $b < $size; $b=$b+1)
{
print "$b. index: $list[$n]\n;";
$n=$n-1;
}
}Külön működött (feltöltöttem kézzel egy listát), de a for ciklusba ágyazva nem jó. A hibaüzenet a $b.index-re utal, a "."-al van baja.
-
Tudna valaki Perl-ben segíteni? Kaptam egy házit, de nem azt csinálja amit én akarok

A standard inputrol beker ket szamot!
A ket bekert szam kozti szamokbol egy listat kepez (pl: ha a ket
szam 42 es 48, akkor a lista elemei: 42,43,44,45,46,47,48), es
kiiratja a lista elemeinek erteket a kovetkezo formaban: i.index=x
(a bekert szamok sorrendjetol fuggetlenul a szamsor csokkeno legyen)
Pelda a mukodesre:
inputok: 10, 15
> ./feladat1.sh
0. index=15
1. index=14
2. index=13
3. index=12
4. index=11
5. index=10For ciklussal kitudom iratni a két szám közötti számokat, de a tömböt nem úgy tölti fel, ahogy kellene. Próbáltam úgy, hogy a cikluson kívül van az értékadás, ekkor csak az utolsó értéket írja ki.
#!/usr/bin/perl -w
$szam1=<STDIN>;
chomp $szam1;
$szam2=<STDIN>;
chomp $szam2;
print "$szam1\n";
print "$szam2\n";
for ( $i=$szam1; $i <= $szam2; $i=$i+1 )
{
@list=$i;
print "@list\n";
}
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- új, bontatlan, iPhone 15 kártya-független, apple világgaranciával
- új, bontatlan, iPhone 16E gyárilag kártya-független, apple világgaranciával
- Legújabb Thinkpad T14 gen6 - Bontatlan + magyar! - Core Ultra 7 255U - 16/32GB - 512GB - Gyártói gar
- 96GB DDR5 ECC RDIMM 5600MHz szerver RAM
- Eladó AMD Ryzen 7 9700X, RTX 3070, 32GB 6000MHz DDR5, 1TB M.2, 850W +80 Gold Gamer PC!
- Xbox Game Pass Ultimate előfizetések kedvező áron
- Beszámítás! VALVE Steam Deck OLED 512GB SSD kézikonzol garanciával hibátlan működéssel
- AZONNALI SZÁLLÍTÁSSAL Eladó Windows 8 / 8.1 Pro
- GYÖNYÖRŰ iPhone 13 128GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS4681
- iPhone 13 Pro 128GB Graphite -1 ÉV GARANCIA - Kártyafüggetlen, MS4475
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

Valami ötlet?
