[Console]-begginer

0

Mam takie czysto lamerskie pytanie... Otóż próbuje stworzyć w programie pewną funkcję, która przyda mi się do wpisywania z klawiatury wartości o określonych parametrach. Mój dotychczasowy dorobek w tej kwestii przedstawia sie nastepujaco:

using System;

namespace ConsoleApplication1
{
	class Class1
	{
		[STAThread]
		static int wpisz1(string a1,char a2,char a3,int b)
		{
			string c;
			int c1;
			do
			{
				Console.Write("{0}",a1);
				c=Console.ReadLine();
				c1=Int32.Parse(c);
			}while(c a2 a3 b);
			return c1;
		}
		static void Main(string[] args)
		{
			int a=wpisz1("wpisz wartosc <=5:",'<','=',5);
		}
	}
}

za diabła nie wiem co mam zrobić z tym while, bo nie chce sie kompilować.
Mam nadzieję, że pośród śmiechu odnajdę jakąś odpowiedz ;-)

0

while(c a2 a3 b);
co miales na mysli piszac ten zapis bo nie rozumiem ??

0

Chodziło mi o to, żeby w pętli while realizował się warunek np. aby wprowadzic liczbe z klawiatury, taką zeby byla mniejsza od 5 etc.
za poszczegolne zmienne we fragmencie "while(c1 a2 a3 b )" podstawione sa konkretne dane z funkcji głównej Main.

0

while(c a2 a3 b);
no dobra za zmienne sa jakeis wartosci ale ten zapis jest chyba bez sensu ?
pomiedzy tymi zmiennymi nie ma zadnych operatorow relacji wiec niby jaki ma byc ten warunek ?? nie jestem jakims guru, ale wydaje mi sie ze musisz sobie o petli while poczytac troche i operatorach w C# :)

0

Rozumiem do czego zmierzacie - warunek musi zwracac wartosc logiczna - OK, ale tak naprawde to moj warunek wedle mojego zamyslu ma byc wlasnie logiczny i w podanym przykladzie wyglada tak c1<=5.
Da się to jakoś zrobić?

A moze jakies propozycje na "parafraze" dla mojej funkcji?

0

tak funckje while ( c1 <= 5 ) mozesz zrobic bez problemu ale porownaj ten zapis z Twoim while(c a2 a3 b);
tam nie ma zadnego warunku i w tym problem.

0

Kompilator to widzi tak:

while(c '<' '=' 5);

Troche to dziwne nawet dla kompilatora. Nie da się przekazywać warunków przez zmienną typu char. Możesz zrobić np. tak:


if((a1== '<' )&&(a2== '=' ))
{
while(c<=b);
}
else
if((a1== '>' )&&(a2== '=' ))
{
while(c>=b);
}
//else...


0

Dzięki za pomoc, dotąd nawet nie wiedzialem ze tak mozna :-)

1 użytkowników online, w tym zalogowanych: 0, gości: 1