Определить, является ли введенная последовательность геометрической прогрессией - C#
Формулировка задачи:
С клавиатуры вводится последовательность целых чисел, признаком конца ввода является 0, определить является введенная последовательность геометрической прогрессией.
Подскажите пожалуйста, работает без массива, но при вводе двух чисел последовательности проверка не проходит так как выходит из цикла, даже если проверку сделать, то как ни крути b присваивается c(Это необходимо чтобы продолжить проверку чисел последовательности если их больше трех).
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _test { class Program { static void Main(string[] args) { double a, b, c = 1, d; bool progress = true; System.Console.Write("Введите последовательность чисел через строку:\n"); a = Convert.ToDouble(Console.ReadLine()); b = Convert.ToDouble(Console.ReadLine()); d = a / b; System.Console.WriteLine( d); while (c != 0) { c = Convert.ToDouble(Console.ReadLine()); if (c != 0) { if (b / c != d) progress = true; else progress = false; } b=c; } if (!progress) System.Console.WriteLine("Последовательность является геометрической прогрессией"); else System.Console.WriteLine("Последовательность НЕ является геометрической прогрессией"); while (Console.ReadKey().Key != ConsoleKey.Escape) ; } } }
Решение задачи: «Определить, является ли введенная последовательность геометрической прогрессией»
textual
Листинг программы
static void Main(string[] args) { double a, b, c, d; bool progress = true; System.Console.Write("Введите последовательность чисел через строку:\n"); a = Convert.ToDouble(Console.ReadLine()); b = Convert.ToDouble(Console.ReadLine()); d = a / b; c = Convert.ToDouble(Console.ReadLine()); while (c != 0) { progress &= (b / c == d); b = c; c = Convert.ToDouble(Console.ReadLine()); } if (progress) System.Console.WriteLine("Последовательность является геометрической прогрессией c шагом {0}", 1/d); else System.Console.WriteLine("Последовательность НЕ является геометрической прогрессией"); while (Console.ReadKey().Key != ConsoleKey.Escape) ; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д