Численное решение контрольных задач по физике
Приложение к файлам контрольных работ

(c) Черноус Алексей, 2022
<alexch82@ya.ru>, https://www.chernous.site

# 7 класс <<Закон Архимеда>>

/* Загрузка единиц СИ, физических констант, производных констант и табличных величин */
load("const.mac")$

## Вариант

### Задача (1б)

Что произойдёт с шариком из сливочного масла, если его поместить в нефть? [$\rho_{масла} = 910~{кг}/{м}^3$, $\rho_{нефти} = 900~{кг}/{м}^3$].\\А. Погрузится на дно;\\Б. Будет плавать внутри жидкости;\\В. Всплывёт, большая часть будет под поверхностью жидкости;\\Г. Всплывёт, большая часть будет над поверхностью жидкости.

disp("Дано:")$
set: [ρ_масла = 910`kg/m^3, ρ_нефти = 900`kg/m^3]$
for i: 1 thru length(set) do
    disp(set[i])$
disp("Найти:")$
fnd: [k_A]$
for i: 1 thru length(fnd) do
    disp(fnd[i])$
disp("Уравнения:")$
eq: [k_A = ρ_масла/ρ_нефти]$
for i: 1 thru length(eq) do
    disp(eq[i])$
disp("Решение:")$
ans: solve(eq, fnd)$
ans: ans[1]$
disp(ans)$
disp("Ответ:")$
uc: 1-float(rhs(ev(constvalue(ans), set, numer)))$
if uc<0 then disp("А. Погрузится на дно") else
if abs(uc)<0.001 then disp("Б. Будет плавать внутри жидкости") else
if uc<0.5 then disp("В. Всплывёт, большая часть будет под поверхностью жидкости")
else disp("Г. Всплывёт, большая часть будет над поверхностью жидкости")$
kill(set, fnd, eq, ans, uc)$

### Задача (4б)

Определите силу Архимеда, действующую на тело объёмом $400~{см}^3$, погружённое в нефть.

disp("Дано:")$
set: [V_тела=400`cm^3``m^3, ρ_нефть = 900`kg/m^3]$
for i: 1 thru length(set) do
    disp(set[i])$
disp("Найти:")$
fnd: [F_A]$
for i: 1 thru length(fnd) do
    disp(fnd[i])$
disp("Уравнения:")$
eq: [F_A = ρ_нефть*%g_n*V_тела]$
for i: 1 thru length(eq) do
    disp(eq[i])$
disp("Решение:")$
ans: solve(eq, fnd)$
if lengtn(ans)>=1 then
    ans: ans[1]$
for i: 1 thru length(ans) do
    disp(ans[i])$
disp("Ответ:")$
for i: 1 thru length(ans) do
    disp(ev(constvalue(ans[i]), set, numer))$
kill(set, fnd, eq, ans)$

### Задача (5б)

На какую глубину погрузится в ртуть литиевый брусок размерами $10{х}12{х}20~{см}$? [$\rho_{ртути} = 13000~{кг}/{м}^3$, $\rho_{лития} = 534~{кг}/{м}^3$]

disp("Дано:")$
set: [a=10`cm``m, b=12`cm``m, c=20`cm``m, ρ_ртути=13000`kg/m^3, ρ_лития=534`kg/m^3]$
for i: 1 thru length(set) do
    disp(set[i])$
disp("Найти:")$
fnd: [h_погр, F_A, P_бруска, m_бруска, V_бруска, V_погр]$
for i: 1 thru length(fnd) do
    disp(fnd[i])$
disp("Уравнения:")$
eq: [F_A=P_бруска, F_A=ρ_ртути*%g_n*V_погр,
    P_бруска=m_бруска*%g_n, m_бруска=ρ_лития*V_бруска,
    V_бруска=a*b*c, V_погр=b*c*h_погр]$
for i: 1 thru length(eq) do
    disp(eq[i])$
disp("Решение:")$
ans: solve(eq, fnd)$
if lengtn(ans)>=1 then
    ans: ans[1]$
for i: 1 thru length(ans[1]) do
    disp(ans[1][i])$
disp("Ответ:")$
for i: 1 thru length(ans[1]) do
    disp(ev(constvalue(ans[1][i]), set, numer))$
kill(set, fnd, eq, ans)$

### Задача (5б)

Какой объём воды вытесняет корабль водоизмещением $1234~{тонн}$?

disp("Дано:")$
set: [m_воды=1234`metric_ton``kg, ρ_воды=1000`kg/m^3]$
for i: 1 thru length(set) do
    disp(set[i])$
disp("Найти:")$
fnd: [V_воды]$
for i: 1 thru length(fnd) do
    disp(fnd[i])$
disp("Уравнения:")$
eq: [m_воды=ρ_воды*V_воды]$
for i: 1 thru length(eq) do
    disp(eq[i])$
disp("Решение:")$
ans: solve(eq, fnd)$
if lengtn(ans)>=1 then
    ans: ans[1]$
for i: 1 thru length(ans) do
    disp(ans[i])$
disp("Ответ:")$
for i: 1 thru length(ans) do
    disp(ev(constvalue(ans[i]), set, numer))$
kill(set, fnd, eq, ans)$