1 Востаннє редагувалося Chemist-i (24.03.2015 21:40:35)

Тема: Потрібна допомога в С#

Знайти кількість двоцифрових чисел, які кратні натуральному числу N.

написав код :

int n, b, s;
n = Convert.ToInt32(Console.ReadLine());
for (b = 10; b < 100; ++b)
{
    if (b % n)  // але тут помилка

    ++s;
}
Console.WriteLine("{0}", s);
Console.ReadKey();

як зробити так, щоб код провіряв подільність b на певне число (n). Якщо ділиться, то s= s+1; b=b+1;

Одним словом, який код відповідає функція подільності не певне число?

2 Востаннє редагувалося koala (22.03.2015 17:55:21)

Re: Потрібна допомога в С#

b%n - операція знаходження остачі від ділення. Щоб перевірити, чи ділиться число на інше, треба порівняти цю остачу з нулем:

if ( b % n == 0 ) //ділиться
else //не ділиться

І використовуйте на цьому форумі теги code.

Подякували: leofun01, Nick99562

3

Re: Потрібна допомога в С#

koala написав:

b%n - операція знаходження остачі від ділення. Щоб перевірити, чи ділиться число на інше, треба порівняти цю остачу з нулем:

if ( b % n == 0 ) //ділиться
else //не ділиться

І використовуйте на цьому форумі теги code.

дякую

4 Востаннє редагувалося Chemist-i (24.03.2015 21:40:11)

Re: Потрібна допомога в С#

using System;

namespace kratne
{
    class MainClass
    {
        public static void Main (string[] args)
        {
            int n, b, s ;
            n = Convert.ToInt32 (Console.ReadLine ());
            b = 9;
            metka:    b = b + 1;
                if (b % n == 0) 
            {    
                s += 1;                     // Use of unassigned local variable "s"
                goto metka;
            }
            else goto metka;
    
            Console.WriteLine("{0}",s);  // Unreachable code detected
            Console.ReadKey ();
        }
    }
}

чому вибиває помилку?
в чому проблема і як виправити ?

Chemist-i: Для коду користуйтесь, будь ласка, теґом [ code ]

5

Re: Потрібна допомога в С#

s += 1;                     // Use of unassigned local variable "s"

Якщо до казна чого додати одиницю, то одержимо казна_що+1

Подякували: Nick9956, koala2

6

Re: Потрібна допомога в С#

Chemist-i написав:

Chemist-i: Для коду користуйтесь, будь-ласка, теґом [ code ]

0xDADA11C7: Будь ласка пишеться окремо
http://cs605631.сайт-злодій/v605631470/93fd/qkyLUdn8P5E.jpg

Подякували: Nick9956, leofun012

7

Re: Потрібна допомога в С#

0xDADA11C7
Винен, виправлюсь!

8

Re: Потрібна допомога в С#

namespace Ex03 {
    class Program    {
        public static void Main(string[] args) {
            int n, count = 0, max = 0;
            n = Convert.ToInt32(Console.ReadLine());
            
            if(n>=100)
                max = 100;
            else
                max = n;
            
            for(int i = 1;i<max;i++) {
                if(n%i == 0) {
                    count++;
                    Console.Write(" {0} ",i);
                }
            }
            Console.WriteLine("\nCount={0}",count);                
            Console.Write("Press any key to continue . . . ");
            Console.ReadKey(true);
        }
    }
}
Подякували: Nick99561

9 Востаннє редагувалося yarko (01.04.2015 13:41:03)

Re: Потрібна допомога в С#

Можна обійтися і без перевірки всіх чисел з діапазону [10; 99] на кратність, а зразу вивести лише потрібні.

int n = Convert.ToInt32(Console.ReadLine());
int count = 0;
int k = 10/n;
if (10 % n != 0) ++k;
int n2 = n * k;
while (n2 < 100) {
    ++count;
    Console.Write(" {0} ", n2);
    n2 += n;
}
Подякували: Nick99561

10

Re: Потрібна допомога в С#

yarko написав:

Можна обійтися і без перевірки всіх чисел з діапазону [10; 99] на кратність, а зразу вивести лише потрібні.

Можна обійтись і без циклів:

int n = Convert.ToInt32(Console.ReadLine());
int s = (int)(99/n) - (int)(10/n)

довго не думав, тому для формули потрібне тестування)

Подякували: Nick99561

11

Re: Потрібна допомога в С#

vitia444 написав:
yarko написав:

Можна обійтися і без перевірки всіх чисел з діапазону [10; 99] на кратність, а зразу вивести лише потрібні.

Можна обійтись і без циклів:

int n = Convert.ToInt32(Console.ReadLine());
int s = (int)(99/n) - (int)(10/n)

довго не думав, тому для формули потрібне тестування)

Оскільки 10 в діапазон включається, то треба, мабуть, так (приведення до int зайве):

int n = Convert.ToInt32(Console.ReadLine());
int s = 99/n - 9/n;
Подякували: Nick99561

12

Re: Потрібна допомога в С#

yooll написав:

Оскільки 10 в діапазон включається, то треба, мабуть, так (приведення до int зайве):

int n = Convert.ToInt32(Console.ReadLine());
int s = 99/n - 9/n;

1. в принципі, згоден
2. приведення не вважаю зайвим, оскільки тепер Вашу формулу можна звести до 90/n, що позбавлено логічного змісту. Логіка моя була наступна - проміжні обчислення будуть в double, і їхнє віднімання відбуватиметься як double, що не є правильним для даної ситуації - я віднімаю цілі значення, а дробові можуть потім боком вилізти

Подякували: Nick99561

13

Re: Потрібна допомога в С#

vitia444 написав:

2. приведення не вважаю зайвим, оскільки тепер Вашу формулу можна звести до 90/n, що позбавлено логічного змісту. Логіка моя була наступна - проміжні обчислення будуть в double, і їхнє віднімання відбуватиметься як double, що не є правильним для даної ситуації - я віднімаю цілі значення, а дробові можуть потім боком вилізти

Неправильно. Проміжні обчислення будуть в int, тому формула так не приводиться.

Подякували: vitia444, Nick99562

14

Re: Потрібна допомога в С#

терміново будь ласка допоможіть в мене вибиває помилку пише  "
  protected void gridList_BeforePerformDataSelect(object sender, EventArgs e)
    {
        gridList.DataSource = new WorkPlaceController().GetAll();
    }

Дополнительные сведения: При установлении соединения с SQL Server произошла ошибка, связанная с сетью или с определенным экземпляром. Сервер не найден или недоступен. Убедитесь, что имя экземпляра указано правильно и что на SQL Server разрешены удаленные соединения. (provider: SQL Network Interfaces, error: 26 - Ошибка при обнаружении указанного сервера или экземпляра)

15 Востаннє редагувалося koala (16.06.2015 15:30:07)

Re: Потрібна допомога в С#

1. Створіть нову тему.
2. Врахуйте, що ключове слово "терміново" без ключового слова "оплата" збільшує час очікування відповіді на 2-3 години щонайменше.
3. А поки ви чекатимете на відповідь - відкрийте Google Translate, завантажте туди текст помилки і подумайте, в чому може бути проблема.

16

Re: Потрібна допомога в С#

я можу почекати в мене є пару годин.я просто незнаю чи проблема в лістингу програми,чи є помилка при самому підключенні