Член "Person::name" (объявлено в строке 9) недоступно Код:
#include
#include
using namespace std;
class car;
class Person {
private:
int age;
string name;
public:
Person(string name) {
this->name = name;
}
friend void info_car(Car& car, Person& person);
};
class Car {
private:
string name;
public:
Car(string name) {
this->name = name;
}
friend void info_car(Car& car, Person& person);
};
void info_car(Car& car, Person& person) {
cout << "Человек: "<< person.name <<" имеет машину" << car.name << endl;
}
int main() {
setlocale(LC_ALL, "RU");
Car bmw("BMW");
Person jhon("Jhon");
info_car(bmw, jhon);
return 0;
}
Подскажите , у челика в гайде всё сработало,я недавно начал,так что мог затупить
запишем условие: по условию даны мощности двух алфавитов
Nm=32, Np=64 количество символов в письмах Km=80, Kp=70
Нужно сравнить информационные объемы писем двух племен Im, Ip
решение: для нахождения информационного объема текста нам нужен вес 1 символа в каждом алфавите. Найдем его:
Nm=2^im, подставим сюда известную величину - 32=2^im
32 - это двойка в четвертой степени, поэтому im=4бит
Np=2^ip, подставим сюда известную величину - 64=2^ip
64 - это двойка в пятой степени, поэтому ip=5бит
Вычислим Im=Km*im=80*4=320 бит, Ip=Kp*ip=70*5=350 бит,
сравним объемы Ip>Im
Это значит, что первые две тройки чисел останутся прежними 130.132.
Последнее число в маске это 0. В двоичной с.с 00000000. При умножении на 0 будет ноль. Это значит, что последняя цифра 0.
Т.е. получим 130.132. .0
Остается выяснить середину.
131 - 10000011
192 - 11000000
Тогда поразрядное умножение нам дает
10000000, При переводе в десятичную с.с 2^7=128
Получили новый адрес
130.132.128.0
Сопоставим с буквами
EBAF