Задача 1: Вычисление степени При языка программирования Питон определите значение выражения 3 в степени 100. Какое число получилось? Напишите программу, вычисляющую это значение, запустите, выведите ответ, скопируйте его в буфер обмена и вставьте в поле для ввода ответа. Задача 2: Гипотенуза Катеты прямоугольного треугольника равны 7 и 10. При интерпретатора языка Питон вычислите длину гипотенузы этого треугольника. ответ дайте с точностью до 10 знаков после запятой.
Задача 3.Вычисление площади поверхности цилиндра Определить, сколько банок краски потребуется, чтобы окрасить поверхность бака цилиндрической формы. Покрасить надо и снаружи, и изнутри. Пользователь вводит диаметр и высоту бака, а также какую площадь можно окрасить одной банкой краски. Чтобы узнать количество требуемых банок краски, надо разделить окрашиваемую площадь на площадь, окрашиваемую одной банкой. Площадь бака представляет собой сумму площадей двух кругов (крышки и дна бака) и площади самой цилиндрической поверхности. Кроме того, если бак также красится изнутри, найденную площадь следует умножить на 2. Площадь круга через диаметр равна pi * d2 / 4 Площадь цилиндра: pi * d * h, где d и h - диаметр и высота цилиндра.
Задача 4.Вычислить ежемесячный платеж по кредиту и полную сумму выплат Требуется вычислить, сколько придется платить в месяц по кредиту и сколько всего отдать денег банку за весь период. Месячная выплата по займу вычисляется по такой загадочной формуле: m = (s * p * (1 + p)n) / (12 * ((1 + p)n – 1)) В этой формуле: m - размер месячного платежа; s - сумма займа (кредита); p - процент банка, выраженный в долях единицы (т. е. если 20%, будет 0.2). n - количество лет, на которые берется кредит.
var a, n, b, i, p,s, m:integer;
c:real;
begin
read (n);
a:=n;
b:=0;
c:=0;
p:=1;
while a <> 0 do
begin
a:=a div 10;
b:=b+1;
end;
while b <> 0 do
begin
p:=1;
for m:=1 to b do
p:=p*10;
s:=(n mod p) div (p div 10);
c:=c+s;
end;
b:=b-1;
end;
writeln (c);
end.
program lol (input, output);
var I, a:integer;
begin
a:=0;
for I:=31 to 55 do
begin
if (i mod 2) <> 0 then
a:=a+I;
end;
writeln (a);
end.
var a, b, c, s, I:integer;
begin
read (a, b);
if a<b then
begin
c:=a;
a:=b;
b:=c;
end;
c:=a;
while c > 0 do
begin
while c >= b do
begin
c:=a-b;
if c > 0 then
s:=c;
a:=c;
end;
a:=b;
b:=c;
end;
writeln (s);
end.
program lol (input, output);
var m, n, prod: word;
begin
readln(m, n);
prod := m * n;
while m <> n do
begin
if m > n then
begin
m := m - n
end
else
begin
n := n - m
end
end;
writeln(prod div m)
end.
program lol (input, output);
var a, b, c, e:Integer;
d:real;
begin
read (a, b);
d:=a/b;
c:=trunc(d);
e:=a-(b*c);
writeln ('Частное: ',c);
writeln ('Остаток: ',e);
end.
/* memsegments.c */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct mem
{
char text[100];
int *p;
} mem;
int cmp_by_address(const void *, const void *);
void print_struct_array(mem *, size_t);
int init_global_var = 10; /* Initialized global variable */
int global_var; /* Uninitialized global variable */
static int init_static_var = 20; /* Initialized static variable in global scope */
static int static_var; /* Uninitialized static variable in global scope */
int main(int argc, char **argv, char **envp)
{
static int init_static_local_var = 30; /* Initialized static local variable */
static int static_local_var; /* Uninitialized static local variable */
int init_local_var = 40; /* Initialized local variable */
int local_var; /* Uninitialized local variable */
int *dynamic_var = (int*)malloc(sizeof(int)); /* Dynamic variable */
mem structs[] =
{
{"Global variable (initialized)", &init_global_var},
{"Global variable (uninitialized)", &global_var},
{"Static variable (in global scope, initialized)", &init_static_var},
{"Static variable (in global scope, uninitialized)", &static_var},
{"Static variable (in local scope, initialized)", &init_static_local_var},
{"Static variable (in local scope, uninitialized)", &static_local_var },
{"Function (code)", (int*)&main },
{"Environment variable", (int*)&envp[0] },
{"Local variable (initialized)", &init_local_var },
{"Local variable (uninitialized)", &local_var },
{"Dynamic variable", dynamic_var },
};
size_t len = sizeof(structs) / sizeof(mem);
qsort(structs, len, sizeof(mem), cmp_by_address);
print_struct_array(structs, len);
free(dynamic_var);
return 0;
}
int cmp_by_address(const void *a, const void *b)
{
mem *ma = (mem *)a;
mem *mb = (mem *)b;
if ((unsigned)ma->p > (unsigned)mb->p)
return -1;
else if ((unsigned)ma->p < (unsigned)mb->p)
return 1;
else
return 0;
}
/* Example struct array printing function */
void print_struct_array(mem *array, size_t len)
{
size_t i;
for(i=0; i<len; i++)
printf("%-50s:\t%p\n", array[i].text, array[i].p);
}
В результате получим:
Environment variable : 0xbff52ee0
Local variable (uninitialized) : 0xbff529ac
Local variable (initialized) : 0xbff529a8
Dynamic variable : 0x871c008
Global variable (uninitialized) : 0x804a044
Static variable (in local scope, uninitialized) : 0x804a040
Static variable (in global scope, uninitialized) : 0x804a03c
Static variable (in local scope, initialized) : 0x804a034
Static variable (in global scope, initialized) : 0x804a030
Global variable (initialized) : 0x804a02c
Function (code) : 0x80484ad
Утилита size показывает размер разделов и общий размер для объектных файлов или архивов. Так, для memsegments.o получим:
$ size memsegments.o
text data bss dec hex filename
745 12 8 765 2fd memsegments.o
Объяснение: