Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.92/26: Рейтинг темы: голосов - 26, средняя оценка - 4.92
5 / 5 / 4
Регистрация: 01.11.2009
Сообщений: 576
1
.NET 3.x

Дано действительное число a. Найти среди чисел 1, 1+1/2, 1+1/2+1/3 и тд. первое, большее a

16.11.2011, 17:56. Показов 4904. Ответов 25
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ребята, подскажите профану, где я допустил ошибку: Вот задача: надо сделать Windows Form...Дано действительное число a. Найти среди чисел 1, 1+1/2, 1+1/2+1/3 и тд. первое, большее a. А вот, что я наваял:
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
 
namespace WindowsFormsApplication6
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button3_Click(object sender, EventArgs e)
        {
            Close();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            double a, x, z, y;
            int k = 1;
            a = Convert.ToDouble(textBox1.Text);
            if (a < 1)
               x = 1;
            while (a < k)
                x = 1 + (1 / k++);
 
            label1.Text = Convert.ToString(x);
        }
 
        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            
        }
 
        private void label1_Click(object sender, EventArgs e)
        {
 
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            textBox1.Text = "";
            label1.Text = "";
        }
    }
}
Добавлено через 38 минут
Вот тербования: Форма должна включать кнопки «Вычислить», «Выход» и «Сброс» (последняя присва¬ивает всем входным переменным нулевые значения).
В форме предусмотреть обработку возможных ошибок (деление на 0, ввод недопусти¬мых символов, ввод недопустимых значений). При нажатии клавиши Enter должен выполняться переход к редактированию следующего поля или на кнопку «Вычислить».
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
16.11.2011, 17:56
Ответы с готовыми решениями:

Дано действительное число а. Найти среди чисел 1, 1+1/2, 1, 1+1/2+1/3, . первое, большее заданного числа а
Дано действительное число а. Найти среди чисел 1, 1+1/2, 1, 1+1/2+1/3, ... первое, большее...

Дано действительное число А, большее 1. Найти среди чисел 1, 1+1/2, 1
Дано действительное число А, большее 1. Найти среди чисел 1, 1+1/2, 1+1/2+1/3, ... первое, большее...

Дано действительно число А. Найти среди чисел 1,1+1/2, 1+1/2+1/3,..... первое, большее А.
Дано действительно число А. Найти среди чисел 1,1+1/2, 1+1/2+1/3,..... первое, большее А. ...

Дано вещественное число А>0. Найти среди чисел 1, 1+1/2, 1+1/3,… первое число, большее А
Дано вещественное число А&gt;0. Найти среди чисел 1, 1+1/2, 1+1/3,… первое число, большее А

25
Эксперт .NET
 Аватар для kolorotur
17794 / 12945 / 3381
Регистрация: 17.09.2011
Сообщений: 21,229
16.11.2011, 18:23 2
Цитата Сообщение от Владимир23 Посмотреть сообщение
где я допустил ошибку
Вот здесь:
Цитата Сообщение от Владимир23 Посмотреть сообщение
C#
1
2
while (a < k)
                x = 1 + (1 / k++);
Надо бы так:
C#
1
2
while (a < x + 1) x += (1 / k++);
label1.Text = Convert.ToString(x+1);
0
5 / 5 / 4
Регистрация: 01.11.2009
Сообщений: 576
16.11.2011, 18:50  [ТС] 3
Цитата Сообщение от kolorotur Посмотреть сообщение
Вот здесь:

Надо бы так:
C#
1
2
while (a < x + 1) x += (1 / k++);
label1.Text = Convert.ToString(x+1);
у меня до этого ругался на то что "использование локаоьной переменной "х", которой не присвоено значение", ну и счас тоже ругается.....
0
Амурчанка
 Аватар для tantemka
135 / 135 / 44
Регистрация: 07.11.2011
Сообщений: 279
16.11.2011, 19:03 4
ругается из-за того, что при не выполнении условия

Цитата Сообщение от Владимир23 Посмотреть сообщение
C#
1
2
if (a < 1)
x = 1;
переменная Х не определена. Задайте ей какое-либо значение
0
5 / 5 / 4
Регистрация: 01.11.2009
Сообщений: 576
16.11.2011, 19:11  [ТС] 5
Цитата Сообщение от tantemka Посмотреть сообщение
ругается из-за того, что при не выполнении условия


переменная Х не определена. Задайте ей какое-либо значение
так у меня в коде:
C#
1
2
3
4
5
6
7
8
9
double a, x, z, y;
            int k = 1;
            a = Convert.ToDouble(textBox1.Text);
            if (a < 1)
               x = 1;
            while (a < k)
                x = 1 + (1 / k++);
 
            label1.Text = Convert.ToString(x);
она определенв, вроде как...
0
Злой няш
 Аватар для I2um1
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
16.11.2011, 19:16 6
C#
1
double a, x = 0, z, y;
1
5 / 5 / 4
Регистрация: 01.11.2009
Сообщений: 576
16.11.2011, 19:23  [ТС] 7
Цитата Сообщение от Blood-Angel Посмотреть сообщение
C#
1
double a, x = 0, z, y;
подскажите как исключить деление на ноль, поскольку отладка запускается, но проц на 100% и висит - видимо из-за нуля, хотя честно не знаю, а при просмотре ошиьки ругается на строку x+=(1/k++). ну и ответ корявый...я так предполагаю, что если я ввожу цифру 2, то ответ должен быть "2,....и дробная часть", а такого нет...
0
Амурчанка
 Аватар для tantemka
135 / 135 / 44
Регистрация: 07.11.2011
Сообщений: 279
16.11.2011, 19:32 8
Blood-Angel, присоединяюсь.
Попробовала скомпилировать программу, но увы....
C#
1
2
 while (a < k)
x = 1 + (1 / k++);
меняйте условие

Добавлено через 8 минут
у вас получается бесконечный цикл, а не деление на 0, так как "К" все время увеличивается, а ваша переменная "а" так и остается
0
5 / 5 / 4
Регистрация: 01.11.2009
Сообщений: 576
16.11.2011, 19:35  [ТС] 9
Цитата Сообщение от tantemka Посмотреть сообщение
Blood-Angel, присоединяюсь.
Попробовала скомпилировать программу, но увы....
C#
1
2
 while (a < k)
x = 1 + (1 / k++);
меняйте условие

Добавлено через 8 минут
у вас получается бесконечный цикл, а не деление на 0, так как К все время увеличивается, а ваше переменная а так и остается
Поменял, задаю 0,2, дает 1, задаю 2 - выдает 0, что не правильно, -2 = 1 - вывожу просто х...
0
38 / 40 / 6
Регистрация: 10.11.2011
Сообщений: 70
16.11.2011, 19:39 10
C#
1
2
3
4
5
6
7
8
      double a = 2; //условие
      int i = 1; // счетчик
 
      double result = 0; // результат
      while (result <= a)
      {
        result += 1.0/i++;
      }
0
5 / 5 / 4
Регистрация: 01.11.2009
Сообщений: 576
16.11.2011, 19:39  [ТС] 11
у вас получается бесконечный цикл, а не деление на 0, так как К все время увеличивается, а ваше переменная а так и остается - та к "а" - это вводимое число, оно так и должно остаться, а к должна увеличиваться, чтобы получались числа 1 1/2, 1 1/5, 1 1/11 и тд....
0
38 / 40 / 6
Регистрация: 10.11.2011
Сообщений: 70
16.11.2011, 19:41 12
или так
C#
1
2
3
4
5
6
7
8
9
10
      double a = Convert.ToDouble(textBox1.Text); //условие
      int i = 1; // счетчик
 
      double result = 0; // результат
      while (result <= a)
      {
        result += 1.0/i++;
      }
 
      label1.Text = Convert.ToString(result);
0
5 / 5 / 4
Регистрация: 01.11.2009
Сообщений: 576
16.11.2011, 19:41  [ТС] 13
Цитата Сообщение от Владимир23 Посмотреть сообщение
Поменял, задаю 0,2, дает 1, задаю 2 - выдает 0, что не правильно, -2 = 1 - вывожу просто х...
Цитата Сообщение от SergiiK Посмотреть сообщение
C#
1
2
3
4
5
6
7
8
      double a = 2; //условие
      int i = 1; // счетчик
 
      double result = 0; // результат
      while (result <= a)
      {
        result += 1.0/i++;
      }
не понял, к чему это....?
0
Амурчанка
 Аватар для tantemka
135 / 135 / 44
Регистрация: 07.11.2011
Сообщений: 279
16.11.2011, 19:42 14
Тогда
C#
1
2
double a;
a = Convert.ToDouble(textBox1.Text);
0
38 / 40 / 6
Регистрация: 10.11.2011
Сообщений: 70
16.11.2011, 19:46 15
обращаю внимание, что формула
1 / i - дает результат типа int, т.е. округленный до целых чисел
а 1.0 / i - дает результат типа double

Добавлено через 2 минуты
Цитата Сообщение от Владимир23 Посмотреть сообщение
не понял, к чему это....?
это я тестировал логику при помощи консольного приложения
1
Злой няш
 Аватар для I2um1
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
16.11.2011, 19:56 16
Так сгодится?
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
using System;
 
static class Program
{
    static void Main()
    {
        int k = 1;
        double a, x = 1;
        a = Convert.ToDouble(Console.ReadLine());
        while (a >= x)
            x += 1.0 / ++k;
        Console.WriteLine(x);
    }
}
0
5 / 5 / 4
Регистрация: 01.11.2009
Сообщений: 576
16.11.2011, 20:07  [ТС] 17
Цитата Сообщение от Blood-Angel Посмотреть сообщение
Так сгодится?
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
using System;
 
static class Program
{
    static void Main()
    {
        int k = 1;
        double a, x = 1;
        a = Convert.ToDouble(Console.ReadLine());
        while (a >= x)
            x += 1.0 / ++k;
        Console.WriteLine(x);
    }
}
объясниет, плиз, а то не понятно....здесь же проверяется только пока а >=x....
0
Амурчанка
 Аватар для tantemka
135 / 135 / 44
Регистрация: 07.11.2011
Сообщений: 279
16.11.2011, 20:09 18
Цикл while работает только по истине. Как только ваше искомое число станет больше введенного, цикл прекратится
1
5 / 5 / 4
Регистрация: 01.11.2009
Сообщений: 576
16.11.2011, 21:53  [ТС] 19
Люди, где в VS2008 найти свойство кнопки AcceptButton, чтобы по Ентеру вычисления запускались, а то ищу уже минут 15...?

Добавлено через 1 час 15 минут
Всем большое спасибо...
0
5 / 5 / 4
Регистрация: 01.11.2009
Сообщений: 576
19.11.2011, 17:17  [ТС] 20
Ребята, подсткажите что нужно учить, если у меня задача следующего характера:
Задача: Во время предвыборной компании проводится регистрация кандидатов в депутаты. Каждый кандидат, подавая заявление на регистрацию, указывает номер округа, в котором он собирается баллотироваться, наименование партии, которую он представляет, свой возраст и профессию. Пресс-служба центральной избирательной комиссии выдает информационный бюллетень, в котором приводит следующую информацию: число кандидатов от каждой политической партии. Написать соот¬вет¬ствующую программу.
Требования:
1) Программа должна состоять из модулей. Можно вначале разработать программу без модулей, а когда все ошибки будут устранены, поместить описа¬ние класса в отдельный модуль.
2) Каждый класс обязательно должен включать конструктор.
Насколько я понял нужно создать массив с данными и потом из него вытаскивать данные с сортировкой по партии..я кое-что наваял по примеру в методичке, вот гляньте...это только часть массива создается, а что дальше делать не знаю...
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
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
 
namespace Laba2
{
    public partial class Form1 : Form
    {
        string[] kanfio ={"Петров","Иванов", "Сидоров"};
        int[] vozrast = {23,45,31};
        string[] proff = { "Слесарь", "Маляр", "Электрик" };
        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
 
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
 
        }
    }
}
0
19.11.2011, 17:17
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.11.2011, 17:17
Помогаю со студенческими работами здесь

Дано действительно число а.Найти среди чисел 1, 1*1/2, 1*/1/2+1/3, ... первое число, большее а, и его номер в последовательности чисел.
Прошу помочь решить задачки!:(очень нужно (Билет №2) Дано действительно число а.Найти среди...

Среди чисел найти первое число, большее n
Среди чисел найти первое число, большее n

Среди чисел 1, 4, 9, 16, 25,... найти первое число, большее n
1. Обработка числовых последовательностей Дано число п. Среди чисел 1, 4, 9, 16, 25,... найти...

Найти среди чисел первое число большее N
Ввели число N, большее 1 Найти среди чисел 1, 1+1 / 4, 1+1 / 4+1 / 9, ... первое число большее N


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Проектирование и моделирование
hw_wired 28.01.2025
Введение в моделирование Моделирование представляет собой один из фундаментальных методов научного познания, который позволяет изучать объекты и явления через создание их упрощенных аналогов. В. . .
Алгоритмы и исполнители
hw_wired 28.01.2025
Введение в алгоритмы В современном мире информационных технологий алгоритмы играют основополагающую роль в решении различных задач и автоматизации процессов. Алгоритм представляет собой точную. . .
Хранение информации
hw_wired 28.01.2025
Введение: Роль систем хранения информации в современном мире В современную эпоху цифровых технологий эффективное хранение информации становится одним из ключевых факторов успешного развития любой. . .
Обработка числовой информации
hw_wired 28.01.2025
Введение в обработку числовой информации В современном мире обработка числовой информации стала неотъемлемой частью как профессиональной деятельности, так и повседневной жизни. Электронные таблицы. . .
Мультимедиа
hw_wired 28.01.2025
Введение в мультимедийные технологии В современном мире мультимедийные технологии стали неотъемлемой частью нашей жизни, проникнув во все сферы человеческой деятельности. Термин "мультимедиа". . .
Обработка текстовой информации
hw_wired 28.01.2025
Введение в обработку текстовой информации В современном мире обработка текстовой информации играет фундаментальную роль в различных сферах человеческой деятельности. Текстовые редакторы стали. . .
Обработка графической информации
hw_wired 28.01.2025
Введение в компьютерную графику Компьютерная графика стала неотъемлемой частью современного цифрового мира, пройдя впечатляющий путь развития от простейших черно-белых изображений до сложных. . .
Python в Алгоритмике: Решение задач
hw_wired 28.01.2025
Введение в Python и Алгоритмику В современном мире программирование стало неотъемлемой частью образования и профессионального развития. Python зарекомендовал себя как один из самых популярных и. . .
Компьютер как универсальное устройство для работы с информацией
hw_wired 28.01.2025
Введение в устройство компьютера Компьютер представляет собой универсальное электронное устройство, предназначенное для автоматической обработки информации. В современном мире компьютер стал. . .
Информация и информационные процессы
hw_wired 28.01.2025
Понятие информации и ее виды В современном мире информация является одним из фундаментальных понятий, пронизывающих все сферы человеческой деятельности. Под информацией понимают любые сведения об. . .
Алгоритмика
hw_wired 28.01.2025
Введение: Основы алгоритмики и её роль в информатике В современном мире программирование и алгоритмическое мышление стали неотъемлемой частью образования и профессиональной деятельности. . . .
Информационное моделирование
hw_wired 28.01.2025
Введение в информационное моделирование В современном мире информационное моделирование стало неотъемлемой частью научной, образовательной и профессиональной деятельности. Это мощный инструмент. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru