Diskuze: C# - vypsaní chyby v řetezci
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 8 zpráv z 8.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Napadlo mě, že by sis mohl udělat for cyklus a v něm zkoumat jestli se
znak vstupu rovná pozici v PI.
Mohlo by to vypadat asi nějak takto.
string pi = "3,14"; // tady si můžeš dopsat ty čísla, napadlo mě ještě zapsat PI jako matematický výraz, ale to si kdyžtak pohledej
string vstup = Console.ReadLine();
for(int i = 0; i < 300; i++)
{
if(pi[i] != vstup[i])
Console.WriteLine("Na pozici {0} jsi se spletl.", i);
}
Tohle můžeme udělat, protože string je vlastně pole znaků.
Dej vědět, jestli to funguje, kdybys ještě něco potřeboval, zeptej se.
Souhlasím s Márou, i když řešení bude určitě víc.
Pro toto řešení je potřeba ošetřit pár věcí, např. máš ve string
c_pi mezery, zadávání desetinné čárky/tečky ...atd.
To je jasný, já ho chtěl jen nasměrovat směrem, o kterém si myslím, že by mohlo být řešení. Btw. jsi borec, že jsi se naučil 300, já bych to asi nikdy nezvládl. Použil jsi nějaké básničky a mnemotechnické pomůcky?
Použil jsi nějaké básničky a mnemotechnické pomůcky?
Jedna, čtyři, jedna, pět, cos to Mára cos to sneď, děvět, dva, šest , pět, zase si mi něco sněd, tři, pět, osm, devět, napadl mě medvěd, sedm, devět, tři, dva, tři, my jsme bratři, osm, čtyři, šest, dva, šest, ochutnal jsi někdy chřest ? Čtyři, tři, tři, osm, tři jako naši bratři, dvě, sedm, devět, pět, už zase si to sněd.......
ale jinak klobouk dolů
Díky moc za pomoc, trošku jsem to upravil (použil místo 300 -
vstup.lenght), a jede to parádně !
Jinak to o tom stringu a poli jsem nevěděl, jsem rád, že si mi o tom řekl
Takto vypadá funkční kontrolor PI xD
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace pi_version_2
{
class Program
{
static void Main(string[] args)
{
string pi = "3,141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067982148086513282306647093844609550582231725359408128481117450284102701938521105559644622948954930381964428810975665933446128475648233786783165271201909145648566923460348610454326648213393607260249141273724587006606315588174881520920962829254091715364367892590360011330530548820466521384146951941511609433057270365759591953092186117381932611793105118548074462379962749567351885752724891227938183011949129833673362440656643086021394946395224737190702179860943702770539217176293176752384674818467669405132000568127145263560827785771342757789609173637178721468440901224953430146549585371050792279689258923542019956112129021960864034418159813629774771309960518707211349999998372978049951059731732816096318595024459455346908302642522308253344685035261931188171010003137838752886587533208381420617177669147303598253490428755468731159562863882353787593751957781857780532171226806613001927876611195909216420198";
string pokracovat = "ano";
while (pokracovat == "ano") {
Console.WriteLine("Vítej v programu pro kontrolu pí !");
Console.WriteLine("Program obsahuje "+pi.Length+" číslic");
Console.WriteLine("Program sám vypíše potencionální chyby, jestli ne, tak se v řetězci žádné chyby nevyskytují !");
Console.Write("Zadejte pí: ");
string vstup = Console.ReadLine();
Console.WriteLine();
for (int i = 0; i < vstup.Length; i++)
{
if (pi[i] != vstup[i])
Console.WriteLine("Na pozici {0} jsi se spletl.", i);
}
Console.WriteLine("Done !");
Console.WriteLine();
Console.WriteLine("Znovu ? (ano/ne)");
pokracovat = Console.ReadLine();
}
Console.ReadKey();
}
}
}
Btw. jsi borec, že jsi se naučil 300, já bych to asi nikdy nezvládl. Použil jsi nějaké básničky a mnemotechnické pomůcky?
Díky, a ano používám mnemotechnické pomůcky (vizualizaci) bez toho to
snad ani nejde. Je to vážně skvělá věc, doporučuju v případě zájmu si
o tom něco přečíst, a určitě to zvládneš i ty
Já hledávám brejle a až když poněkolikátý projdu kolem zrcadla, tak
zjistím, že je mám na xichtu...
Zobrazeno 8 zpráv z 8.