Loading...

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

martinml avatar martinml 297 Точки
Best Answer

Увеличават се, но трябва да зададеш result1 .. result5 след цикъла - ако го правиш преди това, промяната не им влияе. Освен това, трябва да cast-неш p1 .. p5 към double, иначе ги закръгля, или да ги направиш double още в самото начало.

Поправено решение

0
kamen971 avatar kamen971 1 Точки

Тръгна на 100% , но според мен няма логика p1...p5  да са double . Благодаря !

1
martinml avatar martinml 297 Точки

Когато вършиш операции с int и int, получаваш обратно int (дори и да го използваш, за да декларираш double, т.е. всичко след дес. запетая ще се загуби). Ако поне едното е double, получаваш double.

Това е един прост пример:

int a = 7;
int b = 2;
double result = a/b;
Console.WriteLine(result); // На конзолата се принтира 3

7 / 2 в математиката е 3.5, но тук и a, и b са int, следователно програмата трябва да върне int и получаваш 3.

Ако a или b са double, ще получиш double:

double a = 7;
int b = 2;
double result = a/b;
Console.WriteLine(result); // На конзолата се принтира 3.5

 Това вече е операция между int и double, затова няма закръгляне и получаваш точен отговор.

Кастването върши същата работа - превръща единия int в double, за да не се получи целочислено деление.

Можеш да видиш още информация тук в книгата на Наков (използвай ctrl + f и напиши целочислено деление)

1
21/08/2017 18:23:22
donsavage avatar donsavage 4 Точки

Изхода ти подсказва какъв тип трябва да е:

66.67%

0.00%

0.00%

0.00%

33.33%

С int при подобни задачи/проекти можеш да загубиш данни, което не е желателно 

Целочисленият тип "int" няма как да даде такъв изход с плаваща запетая.

Ето как ще изглежда изходът ти с int:

66%

0%

0%

0%

33%

За това решението е с double, а не с int :)

Четете внимателно условията и ще се справяте доста добре :)

-1
15/10/2018 02:21:05
VladimirPetukhov avatar VladimirPetukhov 28 Точки

Пробвай с double

https://pastebin.com/t6r1Lrrf

А също така ги задай вътре в цикъла

double result1=p1/n*100;

        double result2=p2/n*100;

        double result3=p3/n*100;

        double result4=p4/n*100;

        double result5=p5/n*100;

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