powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Помогите исправить ошибку
11 сообщений из 11, страница 1 из 1
Помогите исправить ошибку
    #39001546
Aleksandr1980
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дан n - мерный вектор а. Требуется вычислить

a n 3 +a n-1 3 +...+a 1 3
вот код.

Ввожу число, но к сожелению программа ее не воспринимает ее как число

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
class Program
{
static void Main(string[] args)
{
double [] a;
int n; double s=0;
try
{
Console.Write("Vvedite n=");
n = Convert.ToInt32(Console.ReadLine());
a = new double[n];
for (int i = n; i>=1; i--)
{
Console.Write("Vvedite a[" + i + "] element=");
a[i] = Convert.ToInt32(Console.ReadLine());
} 
for (int i=n; i>=1; i--)
{
s=s+Math.Pow(a[i],3);
Console.WriteLine("s=" + s);
Console.ReadLine();
}

}
catch
{
Console.WriteLine("Vvedite cislo");
}
Console.ReadLine();
}
}
}



Вот код. Программа не воспринимает число. Число воспринимаетмя как текст. Где ошибка не пойму
...
Рейтинг: 0 / 0
Помогите исправить ошибку
    #39001568
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksandr1980
Код: c#
1.
"s=" + s

вы пытаетесь сложить текст с числом. Что должно произойти в результате этой арифметической операции?
...
Рейтинг: 0 / 0
Помогите исправить ошибку
    #39001579
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProAleksandr1980
Код: c#
1.
"s=" + s

вы пытаетесь сложить текст с числом. Что должно произойти в результате этой арифметической операции?сумма прописью!
...
Рейтинг: 0 / 0
Помогите исправить ошибку
    #39001587
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AntonariyShocker.Proпропущено...
вы пытаетесь сложить текст с числом. Что должно произойти в результате этой арифметической операции?сумма прописью!Гениально!
...
Рейтинг: 0 / 0
Помогите исправить ошибку
    #39001613
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AntonariyShocker.Proпропущено...
вы пытаетесь сложить текст с числом. Что должно произойти в результате этой арифметической операции?сумма прописью!

Aleksandr1980 , это был ваш следующий вопрос ;-)

А что - сообщений никаких нет? только типа "ya ne vosprinimayu eto!" ?
...
Рейтинг: 0 / 0
Помогите исправить ошибку
    #39001619
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WinnipuhА что - сообщений никаких нет?конечно, он же исключения все отлавливает и не анализирует никак.
...
Рейтинг: 0 / 0
Помогите исправить ошибку
    #39001657
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksandr1980, у тебя происходит выход за пределы массива, но ты этого не видишь из-за неправильной обработки исключений. У тебя цикл начинается идет от n до 1, а индексы в массиве размером n идут от 0 до n-1. Соответственно на первой итерации идет обращение к элементу за пределом массива и возникает исключение. То есть первый цикл надо записать так:
Код: c#
1.
2.
3.
4.
5.
for (int i = n-1; i>=0; i--)
{
    Console.Write("Vvedite a[" + (i+1) + "] element=");
    a[i] = Convert.ToInt32(Console.ReadLine());
}


или так:
Код: c#
1.
2.
3.
4.
5.
for (int i = n; i>=1; i--)
{
    Console.Write("Vvedite a[" + i + "] element=");
    a[i-1] = Convert.ToInt32(Console.ReadLine());
} 


Со вторым циклом поступаем по аналогии.

Что касается обработки исключений, то в данном случае try/catch следовало ставить только вокруг ввода числа и ловить FormatException и OverflowException.

Shocker.Proвы пытаетесь сложить текст с числом. Что должно произойти в результате этой арифметической операции?
К сведению "экспертов" - C# это разрешает. Для второго операнда будет вызван ToString() и две строки будет соединены.
...
Рейтинг: 0 / 0
Помогите исправить ошибку
    #39001820
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bazileК сведению "экспертов" - C# это разрешает. Для второго операнда будет вызван ToString() и две строки будет соединены.

Только произойдет boxing, поэтому нужно делать ToString() явно для value-type
...
Рейтинг: 0 / 0
Помогите исправить ошибку
    #39004370
Фотография Belavik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProAntonariyпропущено...
сумма прописью!Гениально!
И никто и не заметил, что сообщение написал не ТС
...
Рейтинг: 0 / 0
Помогите исправить ошибку
    #39004374
Фотография Denis.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mmnick наругает
...
Рейтинг: 0 / 0
Помогите исправить ошибку
    #39004497
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelavikИ никто и не заметил, что сообщение написал не ТСC чего ты взял? ))
ЗЫ: Можно было бы составить сборник перлов Антонария, да только он выдает раз в несколько месяцев, жаль...
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Помогите исправить ошибку
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]