Функция поиска в C#
Я хочу сделать функцию поиска, но она не работает должным образом.
Что я уже пробовал:
namespace Banking_system { class Program { static string[] customer_name; static int b; static string[] notes = new string[] { "10", "20", "50", "100", "500", "1000", "5000" }; //static int[] notes = new int[] { 10, 20, 50, 100, 500, 1000, 5000 }; static int[] freq_counter = new int[] {0}; static int[] bank_balance; static void Main(string[] args) { int[] deposit; int[] retrieve; int choice; char check; int a; Console.WriteLine("Welcome the MIB Bank"); Console.WriteLine("First Muslim International Bank"); Console.WriteLine("Enter the value for no of Customer in our bank"); a = Convert.ToInt32(Console.ReadLine()); b=a; customer_name = new string[a]; deposit = new int[a]; retrieve = new int[a]; bank_balance = new int[a]; for(int i=0;i< a; i++) { Console.WriteLine("Enter the name of the Customer"); customer_name[i] = Console.ReadLine(); Console.WriteLine(customer_name[i]+" Enter the current balance of"); bank_balance[i] = Convert.ToInt32(Console.ReadLine()); } while (true) { Console.WriteLine("Welcome you are the vaulable customer in MIB Bank"); Console.WriteLine("1- Deposit Amount\n 2- Retrieve Amount\n 3- Check Balance Amount"); choice = Convert.ToInt32(Console.ReadLine()); if (choice == 1) { Program p = new Program(); p.deposit_amount(deposit); } else if (choice == 2) { Program p = new Program(); p.retrieve_amount(retrieve); } else if(choice == 3) { Program p = new Program(); p.total_bank_balance(); } while (true) { Console.WriteLine("Do you want to go to the menu again\n 1- Press y or Y for Yes\n 2- Press n or N for No"); check = Convert.ToChar(Console.ReadLine()); if(check=='y' || check == 'Y') { break; } else if(check=='n' || check == 'N') { break; } else { Console.WriteLine("Please Enter the Vaild Key"); } } if(check=='n' || check == 'N') { break; } } Console.ReadLine(); }//End of main funcion int []deposit_amount(int []deposit) { deposit = new int[b]; for (int k = 0; k < b; k++) { string name; Console.WriteLine(customer_name[k] + " Please Enter your new Deposit Amount"); deposit[k] = Convert.ToInt32(Console.ReadLine()); bank_balance[k] = bank_balance[k] + deposit[k]; Console.WriteLine(customer_name[k] + "Your New Deposit amount is " + bank_balance[k]); } return deposit; } int[] retrieve_amount(int[]retrieve) { retrieve = new int[b]; for (int k = 0; k < b; k++) { Console.WriteLine(customer_name[k] + " Please Enter your new Retrieve Amount"); retrieve[k] = Convert.ToInt32(Console.ReadLine()); bank_balance[k] = bank_balance[k] - retrieve[k]; Console.WriteLine(customer_name[k] + "Your New Amount is " + bank_balance[k]); } return retrieve; } void total_bank_balance() { string name; int balance; Console.WriteLine("Please Enter the name for check the total balance"); name = Console.ReadLine(); search(name); for (int k = 0; k < b; k++) { Console.WriteLine(name + " Your total bank balance is " + bank_balance[k]); } }// End of Total Balance string search(string name) { for (int k = 0; k < b; k++) { if (customer_name[k] == name) { return name; } else { Console.WriteLine("Client name is not in our database"); } } return "null"; } }// End of Class Program }// End of namespace Banking System
F-ES Sitecore
"Не работает" не дает никому достаточно информации, чтобы помочь вам. Вы бы не позвонили механику и не сказали: "моя машина не работает, как мне ее починить?" Используйте отладчик для пошагового просмотра кода и выяснения того, что он делает, чего вы не хотите, или не делает того, что вы хотите. Когда вы это выясните, попробуйте подумать о том, как изменить код, чтобы сделать то, что вы хотите. Если вы выполняете некоторую отладку и находите причину, то не стесняйтесь задавать конкретный вопрос о вашем коде, но мы здесь не для того, чтобы вы сбрасывали 100 строк кода и просили нас исправить его, когда мы понятия не имеем, что он должен делать.
Patrice T
Мы понятия не имеем, чего вы ожидаете или что вы получаете неправильно.