Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Использование модификатора параметра outМодификатор параметра out подобен модификатору ref, за одним исключением: он служит только для передачи значения за пределы метода. Поэтому переменной, используемой в качестве параметра out, не нужно (да и бесполезно) присваивать какое-то значение. Более того, в методе параметр out считается неинициализированным, т.е. предполагается, что у него отсутствует первоначальное значение. Это означает, что значение должно быть присвоено данному параметру в методе до его завершения. Следовательно, после вызова метода параметр out будет содержать некоторое значение. //использовать модификатор параметра out/ using System; class Decompose { //разделить числовое значение с плавающей точкой на целую и дробную части. public int GetParts(double n, out double frac) { int whole; whole = (int)n; frac = n - whole;//передать дробную часть через параметр frac return whole;//возвратить целую часть числа } } class UseOut { static void Main() { Decompose ob = new Decompose(); int i; double f; i = ob.GetParts(10.125, out f); Console.WriteLine("Целая часть числа равна " + i); Console.WriteLine("Дробная часть числа равна " + f); } } //использовать два параметра типа out using System; class Num { /*определить, имеется ли у числовых значений переменных x и y общий множитель. Если имеется, то возвратить наименьший и наибольший множители песредством переметров типа Out. */ public bool HasComFactor(int x, int y, out int least, out int greatest) { int i; int max=x<y?x:y; bool first = true; least=1; greatest=1; //найти наименьший и наибольший общий множитель. for(i=2;i<=max/2+1;i++) { if(((y%i)==0)&((x%i)==0)) { if(first) { least=i; first=false; } greatest=i; } } if(least!=1)return true; else return false; } } class DemoOut { static void Main() { Num ob = new Num(); int lcf, gcf; if (ob.HasComFactor(231, 105, out lcf, out gcf)) { Console.WriteLine("Наименьший общий множитель чисел 231 и 105 равен " + lcf); Console.WriteLine("Наибольший общий множитель чисел 231 и 105 равен " + gcf); } else Console.WriteLine("Общий множитель у чисел 231 и 105 отсутствует."); if (ob.HasComFactor(35, 51, out lcf, out gcf)) { Console.WriteLine("Наименьший общий множитель чисел 35 и 51 равен " + lcf); Console.WriteLine("Наибольший общий множитель чисел 35 и 51 равен " + gcf); } else Console.WriteLine("Общий множитель у чисел 35 и 51 отсутствует."); } }
|