?>
***PYTHON*** В программу добавить возможность перебросить деньги на другой аккаунт. То есть, мы логинимось под свой аккаунт, заходим в операцию с карточкой, выбираем "переслать деньги", пользователь должен ввести имя пользователя, и определенную сумму. ВНИМАНИЕ! Должны быть проверки на то, или такой пользователь есть, да у того кто пересылает я такая сумма на счету. ***КОД*** money = 0 import pickle def read_from_file(): file = open("users_data.txt", "rb") value = pickle.load(file) file.close() return value users_list = read_from_file() tmp = users_list def write_to_file(): file = open("users_data.txt", "wb") pickle.dump(users_list, file) file.close() def registration(): name = input('Enter name') isFound = False while True: login = input('Enter login') for i in range(len(users_list)): if login == users_list[i]: print('This login is already used.\nTry again...') isFound = True break if not isFound: break password = input('Enter password') users_list.append(name) users_list.append(login) users_list.append(password) users_list.append(0) write_to_file() def login(): user_login = input('Enter login: ') user_password = input('Enter password: ') for i in range(1, len(users_list), 4): if users_list[i] == user_login: if users_list[i+1] == user_password: print(f'Hello dear - {users_list[i-1]}') return True else: print('Incorrect password') return False print(users_list) log_Or_reg = int(input('Enter 1 - login, 2 - registration: ')) if log_Or_reg == 2: registration() isLogin = login() while isLogin: choise = int(input('\t ***CART MENU***\n1 - Work with card\n2 - Put\n3 - Balance\n0 - BACK‼')) if choise == 0: isLogin = False elif choise == 1: print ('Take') elif choise == 2: print('Put') elif choise == 3: print(f'Dear {users_list[tmp -1]}, your balance = {users_list[tmp +2]} ') if choise == 4: NP = input("New pass: ") users_list[2] = NP
Ответы
#include <stdio.h>
double y1(double x,double y) {
return (2*y-sqrt(x*x+y*y))/(2*x);
};
double ye(double x) {
return (sinh(0.5*log(1/x)));
};
int main() {
double y0=0, x0=1, xn=2, h=0.05;
double x,y,yr,et;
x=x0; y=y0;
for (int i=1; i<=floor((xn-x0)/h)+1; i++) {
yr=y+h*y1(x,y);
et=ye(x);
printf("\nx=%8.5f, y=%8.5f, yr=%8.5f, et=%8.5f, eps=%8.5f",x,y,yr,et,yr-et);
x+=h; y=yr;
};
return 0;
}
Тестовое решение:
x= 1.00000, y= 0.00000, yr=-0.02500, et= 0.00000, eps=-0.02500
x= 1.05000, y=-0.02500, yr=-0.05120, et=-0.02440, eps=-0.02680
x= 1.10000, y=-0.05120, yr=-0.07855, et=-0.04767, eps=-0.03088
x= 1.15000, y=-0.07855, yr=-0.10703, et=-0.06994, eps=-0.03709
x= 1.20000, y=-0.10703, yr=-0.13658, et=-0.09129, eps=-0.04530
x= 1.25000, y=-0.13658, yr=-0.16720, et=-0.11180, eps=-0.05539
x= 1.30000, y=-0.16720, yr=-0.19883, et=-0.13156, eps=-0.06727
x= 1.35000, y=-0.19883, yr=-0.23147, et=-0.15062, eps=-0.08085
x= 1.40000, y=-0.23147, yr=-0.26507, et=-0.16903, eps=-0.09604
x= 1.45000, y=-0.26507, yr=-0.29963, et=-0.18685, eps=-0.11277
x= 1.50000, y=-0.29963, yr=-0.33511, et=-0.20412, eps=-0.13098
x= 1.55000, y=-0.33511, yr=-0.37150, et=-0.22089, eps=-0.15061
x= 1.60000, y=-0.37150, yr=-0.40877, et=-0.23717, eps=-0.17160
x= 1.65000, y=-0.40877, yr=-0.44691, et=-0.25301, eps=-0.19390
x= 1.70000, y=-0.44691, yr=-0.48591, et=-0.26844, eps=-0.21747
x= 1.75000, y=-0.48591, yr=-0.52574, et=-0.28347, eps=-0.24226
x= 1.80000, y=-0.52574, yr=-0.56638, et=-0.29814, eps=-0.26824
x= 1.85000, y=-0.56638, yr=-0.60784, et=-0.31247, eps=-0.29537
x= 1.90000, y=-0.60784, yr=-0.65008, et=-0.32646, eps=-0.32362
x= 1.95000, y=-0.65008, yr=-0.69310, et=-0.34015, eps=-0.35295
x= 2.00000, y=-0.69310, yr=-0.73689, et=-0.35355, eps=-0.38334