Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace лб_1
- {
- class lab1
- {
- public static double accurate(int n, double perc, double sum, int month, int amountofyears)
- {
- int k = 365;
- int fully = 365;
- for (int i = 0; i <= amountofyears; i++)
- {
- if (month == 12) month = 0;
- if (month + 1 <= 7 && month + 1 > 2)
- {
- for (; month != 12; month++)
- {
- if (month / 2 == 0)
- {
- n += 30;
- }
- else n += 31;
- }
- }
- if (month + 1 > 7)
- {
- for (; month != 12; month++)
- {
- if (month / 2 == 0)
- {
- n += 31;
- }
- else n += 30;
- }
- }
- if (month + 1 == 2)
- {
- n += 28;
- for (; month != 12; month++)
- {
- if (month <= 7)
- {
- if (month / 2 == 0)
- {
- n += 30;
- }
- else n += 31;
- }
- else
- {
- if (month / 2 == 0)
- {
- n += 31;
- }
- else n += 30;
- }
- }
- }
- }
- Console.WriteLine(n);
- double fullperc = sum * n * perc;
- //Console.WriteLine(sum + " " + perc);
- return fullperc;
- }
- public static double commacc(int n, double perc, double sum)
- {
- int k = 360;
- n = n * 365;
- double fulltime = n / k;
- double fullperc = sum * fulltime * perc;
- return fullperc;
- }
- public static double comm(int n, double perc, double sum)
- {
- int k = 360;
- n = n * 360;
- double fulltime = n / k;
- double fullperc = sum * fulltime * perc;
- return fullperc;
- }
- static void Main()
- {
- Console.WriteLine("Введите необходимую сумму:");
- double sum = Convert.ToDouble(Console.ReadLine());
- Console.WriteLine("Введите процентную ставку:");
- double perc = Convert.ToDouble(Console.ReadLine());
- Console.WriteLine("Введите дату начала:");
- string n = Console.ReadLine();
- Console.WriteLine("Введите дату конца:");
- string n2 = Console.ReadLine();
- //счет времени
- int[] nn = new int[3];
- string[] ns = n.Split('.');
- for (int i = 0; i < 2; i++)
- {
- nn[i] = Convert.ToInt32(ns[i]);
- }
- int[] nn2 = new int[3];
- string[] nss = n2.Split('.');
- for (int i = 0; i < 2; i++)
- {
- nn2[i] = Convert.ToInt32(nss[i]);
- }
- int years = nn2[2] - nn[2];
- int months;
- if (nn2[1] >= nn[1]) months = nn2[1] - nn[1];
- else months = (12 - nn[1]) + nn2[1];
- int days = 0;
- if (nn2[0] >= nn[0]) days = nn2[0] - nn[0];
- else if (nn[1] / 2 == 0 && nn[1] != 2 && nn[1] < 8) days = 30 - nn[0] + nn2[0];
- else if (nn[1] == 2) days = 28 - nn[0] + nn2[0];
- else if (nn[1] / 2 == 0 && nn[1] != 2 && nn[1] >= 8) days = 31 - nn[0] + nn2[0];
- else if (nn[1] / 2 != 0 && nn[1] != 2 && nn[1] < 8) days = 31 - nn[0] + nn2[0];
- else if (nn[1] / 2 != 0 && nn[1] != 2 && nn[1] >= 8) days = 30 - nn[0] + nn2[0];
- Console.Clear();
- Console.WriteLine("Выберите метод:\n1.Метод точных процентов\n2.Метод обыкновенных процентов\n3.Метод обыкновенных процентов с приближенным числом дней ссуды");
- int choice = Convert.ToInt32(Console.ReadLine());
- double fullsum = 0;
- double I;
- switch (choice)
- {
- case 1:
- I = accurate(days, perc, sum, months, years);
- fullsum = sum + I;
- Console.WriteLine("Сумма к возврату: " + fullsum);
- break;
- //case 2:
- // I = commacc(n, perc, sum);
- // fullsum = sum + I;
- // Console.WriteLine("Сумма к возврату: " + fullsum);
- // break;
- //case 3:
- // I = comm(n, perc, sum);
- // fullsum = sum + I;
- // Console.WriteLine("Сумма к возврату: " + fullsum);
- // break;
- }
- Console.ReadKey();
- }
- }
- }
Advertisement
Comments
-
- Нужно посчитать полное кол-во дней (для каждого метода будет своим способом, когда-то 30 в каждом месяце)
-
- Для каждого расчета в итоге: кол-во дней - 1
Add Comment
Please, Sign In to add comment
Advertisement