Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

itonev avatar itonev 22 Точки

Здравейте,

На мен лично  не ми тръгна  Live  Stream-a. И все още изписва  Please Stand by

 

0
04/06/2016 09:54:03
MartinKuvandzhiev avatar MartinKuvandzhiev 72 Точки

В след малко ще дам линк към видеото. Ако не ти се чака отвори канала ми. При останалите хора, мисля че е нямало проблем, освен малко забавяне от рода на минута предполагам. 

0
itonev avatar itonev 22 Точки

Явно проблемът е бил в моя браузър и флаш плеър:)

0
TodorovH avatar TodorovH 216 Точки

Какво стана с видеото на 2 лекция? Или проблема е само при мен? Ако е само при мен може ли някакъв линк!

Благодаря.

0
Lirik avatar Lirik 22 Точки

Здравейте !

Реших да се позабавлявам, като практикувам на judje и попаднах на интересен казус.

Задачата е за гладния Garfield и е тук:

https://softuni.bg/downloads/svn/csharp-basics/Exams/2016-02-21/Problem01-Hungry-Garfield.zip

Допускат се решения на C#, C++, JS, Java и PHP.

Авторското решение е на C# и използва тип decimal. Точността на пресметнатия резултат е част от тестовете.

Написах решение на C++, но резултатът е 90/100.

Как на C++ да се постигне максимален резултат, 100/100?

Поздрави

Кирил Иларионов

http://kilarionov.github.io/

0
04/06/2016 12:39:41
welikedrugs avatar welikedrugs 1 Точки

Кога ще бъде качена лекцията и онлайн ?

0
itonev avatar itonev 22 Точки

А къде може да се пусне самото решение в Джъдж , че и аз да тествам .

Редакция: Намерих къде да пусна решението - https://judge.softuni.bg/Contests/Practice/Index/163#0

Впрочем как намери самото условие, защото аз не видях линк към него в Джъджа...

0
05/06/2016 00:24:56
Lirik avatar Lirik 22 Точки

Е "обектно ориентирана система е възел от връзки между обекти", а релационната БД е набор от таблици и връзки между тях. Кое е по-удобно и устоичиво при разработка или при експлоатация?

0
MartinKuvandzhiev avatar MartinKuvandzhiev 72 Точки

Интересно зададен въпрос.

В зависимост от това, което правиш двете се използват за тотално различни неща.

1. Cpp е обектно ориентиран език, в който обектите могат да си "говорят" един на друг, това е смисълът от "възел от връзки между обекти", като тези обекти в определени условия и различни имплементации могат да изпълняват и определени функции и да се изменят определени техни характеристики на база на резултата от тези функции.

2. Релационната БД е система от връзки между различни таблици. Нейната единствена идея е да предоставя информация, без да прави сложни действия с нея, т.е. в базата данни може да се имплементират всякакви операции, могат да се направят псевдо функции, но нейната цел не е да кара обекти да изпълняват дадени функции, а само да запазва характеристиките на тези обекти и предоставя описание на база на изискване за краен резултат.

Кое е по-добро, зависи от изискванията за продукта. Аз избирам и двете. Когато имам да правя приложение, в което ще има запазване и обработка на данни, за запазването на тези данни използвам БД, а за обработката използвам Cpp, Obj C, Swift или C. Ако приложението, което се прави е само и единствено за съхранение на данни, т.е. някакъв логър примерно на врата колко хора са влезнали и кога са влезнали, тогава имплементацията може да е в базата данни (като пак трябва да има някаква проста програмка, която да добавя записите). Друг случай - аз трябва да записвам някаква монотонна, проста информация, която няма да се налага да я пазя дълго време, може да се ползва само и единствено cpp, като в него ще се пазят тези данни и ще се обработват и при нужда изпращат нанякъде.

 

 

1
ktbffh96 avatar ktbffh96 2 Точки

Здравейте!

Аз имам въпрос по домашното! Направил съм си структура, в която променливите name, employees, freeplaces и т.н. са ми private, а getter-ите и setter-ите са public, както беше на лекцията. Само,че в задачата се казва, че трябва да намерим сградата с най-много employees, т.е. да ги сравняваме. Има ли начин да направим това във функция main, ако самите променливи са private. Самите getter-и изписват стойността на екрана, но не връщат нищо, така, че не може да използваме тях. Другия вариант да се реши задачата, ако в класа нищо не private, а всичко е public.

0
v.nikolov avatar v.nikolov 17 Точки

След като са ти private/protected можеш да ги достъпваш единствено в рамките на класа или чрез public getters/setter от самия клас.

0
ktodorov avatar ktodorov 42 Точки

А защо getter-ите не ти връщат нищо? Те трябва да връщат стойност, не да я изписват на екрана. Това им е смисълът. За връщане на екрана може да си изполваш отделна функция.

inline int employees() { return _employees; };

4
v.nikolov avatar v.nikolov 17 Точки

Напротив get функцията връща някаква стойност - стойността на private/protected променлива за която е указано да връща.

inline int employees() { return _employees; }; - в този случай ти връща променлива от тип int .

И съответно в main можеш да направиш променлива примерно:

int countOfEmployees = className.employees(); и с тази променлива можеш да правиш каквото е необходимо;

 

1
nia_flo avatar nia_flo 3 Точки

Здравейте. Какви функции се искат на задача 1 от домашното?

0
MartinKuvandzhiev avatar MartinKuvandzhiev 72 Точки

Изисква се само да се опише един такъв клас. Може да няма int main() функция.

-1
nia_flo avatar nia_flo 3 Точки

Добре😊

0
Baseplate23 avatar Baseplate23 2 Точки

Здравейте,

какво точно трябва да се пресметне във Highest    coefficient    employees/(employees    +    free    seats)   ?

и 2-ро има ли ограничение в дължината на кода?
 

Поздрави

0
MartinKuvandzhiev avatar MartinKuvandzhiev 72 Точки

1. Трябва отговора да е типа : В сградата има 81% заети места.

2. Няма ограничения в дължината на кода.

0
Baseplate23 avatar Baseplate23 2 Точки

Т.е. трябва да се разделят служители на свободни работни места? Така ми излиза, че в едната от сградите заетите места са към 967%

0
boyan.velkov avatar boyan.velkov 14 Точки

Не, трябва да разделиш броя на служителите на капацитета на сградата.
За сградата за която говориш “Rapid Development Crew”, трябва да се получи 822 / (822 + 85) = 822 / 907 = 0,90...

1
ktbffh96 avatar ktbffh96 2 Точки

Здравейте,

Аз имам още един въпрос към домашното. Имам клас Building, в който имам още един клас Infrastructure. В клас Infrastructure се намират променливите offices и floors, със съответните getter-и и setter-и. Само, че когато в main започна да сравнявам сградите, за да намеря тази с най-много офиси и т.н. не мога да достигна до getter-a на offices, защото кода трябва да изглежда нещо такова:

if (building1.infrastructure.getOffices()) > ....... и т.н. 

а в случая класа Infrastructure, част от класа Building e private и не мога да достигна до него. По какъв начин трябва да си преструктурирам кода за да получа желания резулт, без да променям infrastructure от private на public?

Варианта е да направя още един getter за offices в класа Building, само че не се получава много тафталогия и излишни функции по този начин?

0
12/06/2016 15:16:30
fl3x1324 avatar fl3x1324 60 Точки

Защо не сложиш всички атрибути в класа Building? Можеш спокойно да си ги сетнеш в дефиницията на конструктора, като нали вече имаш прототипите им в класа. Това, което ти искаш да направиш е nested classes. По твоя начин мисля че трябва да използваш сетър за сетъра и гетър за гетъра, не съм много запознат но така ми се вижда логично

0
12/06/2016 20:42:01
GeorgiAD avatar GeorgiAD 0 Точки

Малко късно до да се присъединя, 

​
class Building {
public:
    inline Building(float  newHeight, float  newWidth)
    {
        height = newHeight;
        width = newWidth;
    }
    Building()
    {
        height = 0;
        width = 0;
    }
    float height;
    float width;
    ~Building(){
        cout<< "Destructor was called!\n" << endl;
    }
};
class Specifics{
public:
    inline Specifics(int newFloors, double newSeats, int newEmployee )
    {
        floors = newFloors;
        seats = newSeats;
        employee = newEmployee;
    }
    Specifics()
    {
        floors = 0;
        seats = 0;
        employee = 0;
    }
    int floors;
    double seats;
    int employee;
    
    ~Specifics(){
        cout << "Destructor was called!\n" << endl;
    }
};
class OfficeBuilding{
public:
    
    inline OfficeBuilding(float height, float width, int floors, double seats, int employee)
    {
        building.height = height;
        building.width = width;
        specifics.floors = floors;
        specifics.seats = seats;
        specifics.employee = employee;
    }
    
    double allOffice(){
        _allOffice = ((specifics.seats * specifics.floors) / 35);
        return _allOffice;
    }
    string name;
    Specifics specifics;
    Building building;
    
    ~OfficeBuilding(){
        cout<< "Destructor was called!\n" << endl;
    }

​

Докато highest coeficient вече е обсъждан, аз имам по 'семпли' въпроси:

1. стринг-а за нейм идеи как да го 'извикам' ?

2. Функцийката ми allOffice не я харесва ама никак (къде бъркам?!)

Един вид ми куца дефиницията / употребата на класове и конструктори.  

Малко помощ ?

0
DragoslavDragiev avatar DragoslavDragiev 1 Точки

1 може би малко късен въпрос, при положение, че вече е минала лекция 3, но все пак: в пример 5 в github, файл cpp2_5 (примерите с класовете Size, Position, Rectangle). В конструктора на Rectangle имаме: 

inline Rectangle(Position newPosition, Size newSize)
  {
  size = newSize;
  position = newPosition;
  }

 използваме равенство за обекти от тип Position, Size без да сме дефинирали равенството в тези класове. Ще можете ли да обясните какво става тук. Благодаря

0
fl3x1324 avatar fl3x1324 60 Точки

Здрасти, ами това не е равенство, а знак за присвояване на стойност.

В примера, който ти си дал става ясно, че стойността която подадеш като аргумент към конструктора на обекта, в този случай са две стойности: newSIze и newPosition, ще се запишат в property-тата size и position на обекта, който си инициализирал, по щаблона на класа в който е деклариран този конструктор Rectangle().

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.