В1. изобразите дерево структуры каталогов на диске, если известно, что на нем есть файлы cо следующими полными именами: а: \a\b\1.doc а: \с\а\z\2.doc а: \b\а\z\ 3.doc
Var m : array[0..6] of Integer; i,k,N : Integer; Begin For i:=0 to 6 do m[i]:=0; Readln(N); k:=6; While N>0 do Begin If N>=Power(2,k) then Begin N:=N-Trunc(Power(2,k)); Inc(m[k]); end else Dec(k); end; For i:=0 to 6 do Writeln(Power(2,i),' ',m[i],' шт.'); end.
Еще вариант: Const NN = 7; money : array[1..7] of Integer = (1,2,4,8,16,32,64); Var m : array[1..NN] of Integer; i,k,N : Integer; Begin For i:=1 to NN do m[i]:=0; Readln(N); k:=NN; While N>0 do Begin If N>=money[k] then Begin N:=N-money[k]; Inc(m[k]); end else Dec(k); end; For i:=1 to NN do Writeln(money[i],' ',m[i],' шт.'); end.
Mikhailovna_Litvinova276
15.01.2020
Второе красиво решил через строки MinGW GCC 4.7.1 #include <iostream> #include <string> #include <locale.h> using namespace std; char max(char a, char b) { return (a > b) ? a : b; } char min(char a, char b) { return (a < b) ? a : b; } int main(void) { setlocale(LC_ALL,"rus"); string s; cout<<"Введите число: "; cin>>s; char min_c = '9', max_c = '0'; for(size_t i = 0; i < s.length(); i++) { max_c = max(s[i], max_c); min_c = min(s[i], min_c); } cout << "Наибольшая цифра: " << max_c << endl <<"Наименьшая цифра: " << min_c << endl; return 0; }
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
В1. изобразите дерево структуры каталогов на диске, если известно, что на нем есть файлы cо следующими полными именами: а: \a\b\1.doc а: \с\а\z\2.doc а: \b\а\z\ 3.doc