Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 6 658

Раздел: C++
/ вопрос открыт /

Здравствуйте, эксперты! Помогите пожалуйста с задачей. Завтра сдавать , но решить всё ещё не могу.программа не идёт. Буду очень благодарна.

Дано натуральное число n. Проверить, есть ли в записи числа три одинаковые цифры.

Даша Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задала: Даша (статус: Посетитель)
Вопрос отправлен: 31 мая 2017, 18:49
Состояние вопроса: открыт, ответов: 0.


Мини-форум вопроса

Всего сообщений: 5; последнее сообщение — 31 мая 2017, 21:03; участников в обсуждении: 2.
Даша

Даша (статус: Посетитель), 31 мая 2017, 19:40 [#1]:

Задачу нужно было решить подпрограммой..
min@y™

min@y™ (статус: Доктор наук), 31 мая 2017, 19:43 [#2]:

методичка есть? :-)
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
min@y™

min@y™ (статус: Доктор наук), 31 мая 2017, 20:19 [#3]:

Что это за полотенце?
Я только спросил, есть ли методичка.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Даша

Даша (статус: Посетитель), 31 мая 2017, 20:41 [#4]:

Подпрограммы в C#

Подпрограмма (англ. subroutine) — поименованная или иным образом идентифицированная часть компьютерной программы, содержащая описание определённого набора действий. Подпрограмма может быть многократно вызвана из разных частей программы. Т.е. если программа - это решение какой-либо прикладной задачи, то подпрограмма – это тоже решение, только уже в рамках программы и, соответственно, она выполняет задачу «попроще». В языках программирования для оформления и использования подпрограмм существуют специальные синтаксические средства.

В C# подпрограммы реализуются в виде методов. Методы позволяют уменьшить размер программы за счет того, что не нужно повторно писать какой-то фрагмент кода - мы просто вызываем сколько угодно и где нужно объявленный метод. Например, стандартный класс Math содержит методы, которые позволяют вычислять значения математических функций.

Описание метода.

[атрибуты][спецификторы][тип_возвращаемого_результата] [имя_метода] ([список_ формальных параметров])
{
тело_метода;
return значение
};

где:
1. Атрибуты и спецификаторы являются необязательными элементами синтаксиса. На данном этапе атрибуты (возможные значения: public, private и т.д.) использоваться не будут, а из всех спецификаторов будет использоваться спецификатор static, который позволит обращаться к методу класса без создания его экземпляра.
2. Тип_возвращаемого_результата определяет тип значения, возвращаемого методом. Это может быть любой тип. Если метод не возвращает никакого значения, необходимо указать тип void (в этом случае в теле метода отсутствует оператор return).
3. Имя_метода – идентификатор, заданный программистом с учетом требований, накладываемыми на идентификаторы в С#, отличный от тех, которые уже использованы для других элементов программы в пределах текущей области видимости.
4. Список_формальных параметров представляет собой последовательность пар, состоящих из типа данных и идентификатора, разделенных запятыми. Параметры — это переменные или константы, обозначающие исходные данные для функции и получающие значения, передаваемые методу при вызове. Если метод не имеет параметров, то список_ формальных параметров остается пустым.
5. Значение определяет значение, возвращаемое методом в основную программу. Тип значения должен соответствовать типу_возвращаемого_результата.
6. При достижении оператора return происходит выход из функции и код ниже (если он есть) выполняться не будет.

Обращение к методу
Если тип метода void, то вызов имя_метода([список_фактических_параметров])
иначе имя переменной =имя_метода([список_фактических_параметров]),
где список_фактических_параметров – это перечень констант или имен переменных поставляемых на место фактических параметров при обращении к методу.

Между списком формальных и списком фактических аргументов должно быть соответствие по числу, порядку следования, типу аргументов.

Рассмотрите примеры решения задач.
1. Треугольник задан координатами своих вершин. Составить программу для вычисления его площади.

namespace ConsoleApplication11
{
class Program
{
static double dlina(double x1, double y1, double x2, double y2) // заголовок метода, указан тип метода (double), имя метода (dlina) и имена формальных параметров
{
return Math.Sqrt(Math.Pow(x1 - x2, 2) + Math.Pow(y1 - y2, 2)); // тело метода, вычисляется длина отрезка через координаты концов отрезка
}
static void Main(string[] args)
{
double ax = double.Parse(Console.ReadLine()); // ввод координат трех точек
double ay = double.Parse(Console.ReadLine());
double bx = double.Parse(Console.ReadLine());
double by = double.Parse(Console.ReadLine());
double cx = double.Parse(Console.ReadLine());
double cy = double.Parse(Console.ReadLine());
double ab = dlina(ax, ay, bx, by); //вызов метода, вычисление длина отрезка АВ
Console.WriteLine("Длина стороны AB=" + ab); //вывод на экран длины отрезка АВ
double bc = dlina(bx, by, cx, cy);//вызов метода, вычисление длина отрезка ВС
Console.WriteLine("Длина стороны BC=" + bc); //вывод на экран длины отрезка ВС
double ac = dlina(ax, ay, cx, cy);//вызов метода, вычисление длина отрезка АС
Console.WriteLine("Длина стороны AC=" + ac);//вывод на экран длины отрезка АС
double p = (ab + ac + bc) / 2; //Вычисление полупериметра
double s = Math.Sqrt(p * (p - ab) * (p - bc) * (p - ac)); // Вычисление площади треугольника
Console.WriteLine("Площадь треугольника ABC=" + s);
Console.ReadLine();
}
}
}
2. Напишите программу вывода факториалов первых N чисел.
class Program
{
static int faktorial(double m) // заголовок метода, указан тип метода (double), имя метода (dlina) и имена формальных параметров
{
int f = 1;
for (int i = 1; i <= m; i++)
f = f * i;
return f; // тело метода
}
static void Main(string[] args)
{
int n = Convert.ToInt32(Console.ReadLine()); // ввод координат трех точек
for (int i = 1; i <= n; i++)
{
Console.WriteLine("Факториал {0} равен {1}", i, faktorial(i));
}
Console.ReadLine();
}
}
Самостоятельно решите задачи.
1. Даны два треугольника. Определить площадь какого треугольника больше.
2. Сформировать массив X(N), N-й член которого определяется формулой X(N) =1/n!.
min@y™

min@y™ (статус: Доктор наук), 31 мая 2017, 21:03 [#5]:

Странно, что ты не в состоянии ответить на такой простой вопрос (про методичку).
Бросай свой универ, это не твоё.

А программу твою я вижу так:

Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 12:02
Выполнено за 0.02 сек.