Nalezení největšího znaku v řetězci. – Pascal – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Nalezení největšího znaku v řetězci. – Pascal – Fórum – Programujte.comNalezení největšího znaku v řetězci. – Pascal – Fórum – Programujte.com

 

Dominik
~ Anonymní uživatel
129 příspěvků
25. 3. 2016   #1
-
0
-

Ahoj, potřebuji pomoc ve škole nás učí v pascalu ale náš pan učitel spíš neučí než učí a chce po nás že máme udělat program který bude mít tuto hlavní funkci (ty vedlejší zvládám). Zadám mu řetězec, program v něm najde největší písmeno a-z a zvětší je o jedna a přidá je na konec řetězce. Vůbec netuším jak na to napadá mně snad jen každému znaku určit číslo ale jak dál? a hlavně co se stane když někdo zadá Z? Díky moc potřeboval  bych to přes svátky stihnou.

Nahlásit jako SPAM
IP: 194.213.237.–
q
~ Anonymní uživatel
219 příspěvků
25. 3. 2016   #2
-
0
-

Na žádné fórum nepiš, že učitel neučí. NIKDY to není pravda.

Pokud máš hledat největší z malých písmen, tak velká písmena (resp. všechno ostatní) budeš ignorovat. Možná bylo myšleno, že na velikosti nezáleží. Vyber si, nebo se zeptej.

Takže projdeš řetězec a otestuješ jednotlivé znaky. Můžeš použít cyklus for, délku řetězce zjistíš funkcí length. Platí fakt, že znaky abecedy jsou v tabulce znaků u sebe a postupně od a do z, takže to můžeš jednoduše testovat nějak takhle:

(znak >= 'a') and (znak <= 'z') and (znak > max) ...

Pro to zvětšení o 1 asi nepůjde jen přičíst 1, ale budeš muset použít funkce ord (vrátí ordinální hodnotu znaku) a chr (opak ord).

Nahlásit jako SPAM
IP: 213.211.51.–
Dominik
~ Anonymní uživatel
129 příspěvků
26. 3. 2016   #3
-
0
-

#2 q
Ahoj Díky za radu ono ano nikdy to není pravda ovšem když ti učitel dá pouze studijní materiál který vypadá tak že vyfotí telefonem pár stránek z knížky ty nám dá pronese "a dělejte" a jinak se nám celou hodinu nevěnuje :) navíc s pascalem teprve začínáme takže u funkce ord a chr nejsme :( Nicméně mohl by jsi mi to testování prosím více přiblížit? Díky  

Nahlásit jako SPAM
IP: 194.213.237.–
q
~ Anonymní uživatel
219 příspěvků
27. 3. 2016   #4
-
0
-

Pokud jste nebrali ord a chr, tak možná inc a succ. Nepíšeš, jaký pascal používáte, ale toto by snad mělo fungovat všude:

var
	i: integer;
	s: string;
	max: char;
begin
	readln(s);

	max := #0;
	for i := 1 to length(s) do begin
		if (s[i] >= 'a') and (s[i] <= 'z') and (s[i] > max) then
			max := s[i];
	end;

	write(s);
	if max <> #0 then write(succ(max));
	writeln;
end.
Nahlásit jako SPAM
IP: 213.211.51.–
peter
~ Anonymní uživatel
4014 příspěvků
29. 3. 2016   #5
-
0
-

Mozna by bylo casove rychlejsi porovnat, zda je znak>max a az pak vyhodnocovat, zda je to pismenko.
Nebo dat jako vychozi max='a' a pak porovnat znak>max and znak<'z'. Bude tam o jedno if mene.

Nahlásit jako SPAM
IP: 2001:718:2601:26c:598:3b6...–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 17 hostů

Podobná vlákna

[C#] Nalezení znaku ve stringu — založil MartiniBaby

četnost znaků v řetězci — založil Petr Schenk

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý