Форум программистов, компьютерный форум, киберфорум
F# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
0 / 0 / 0
Регистрация: 21.05.2012
Сообщений: 11

Задание на тему "Пифагорова тройка"

26.05.2012, 16:38. Показов 2215. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Если числа X,Y,Z таковы, что Z^2 = X^2+ Y^2, то про такие числа говорят, что они образуют Пифагорову тройку.Написать программу,порождающую Пифагоровы
есть наработка на бэйсике, помогите перевести на f#:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
dim a, b as integer
dim c as single
 
for a =1 to 20
for b=1 to 20
if a<>b then
c=Sqr(a*a+b*b)
 
'Text1.Text=Text1.Text&(c)&Chr(13)+Chr(10)
if c<>a and c<>b then
if c-Fix(c)=0 then
'Text1.Text=Text1.Text&(c Mod 1)&(Chr(13)+Chr(10)
Text1.Text=Text1.Text&a&" "&b&" "&c&Chr(13)+Chr(10)
end if
end if
end if
next
next



еще проблемка в том, что нужен интерфейс, то есть запускаешь программку, выводится сообщение:"Введите количество пифагоровых троек", пользователь вводит корректное число и программка автоматический генерирует заданное количество троек, а не выводит проверяет числа от 1 до 20 как в этоу программке, но как это сделать, затрудняюсь(( помогите пожалуйста
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.05.2012, 16:38
Ответы с готовыми решениями:

Пифагорова тройка
Добрый вечер/день/утро! Помогите решить, пожалуйста параметризованные типы Есть, описывающий тройку чисел: class...

Пифагорова тройка
Существует Пифагорова тройка : a^2+b^2=c^2. Существует только одна такая тройка, которая удовлетворяет a+b+c=1000 Написать программу,...

Пифагорова тройка
class ThreeIntegers&lt;T1, T2, T3&gt;{ T1 t1; T2 t2; T3 t3; public ThreeIntegers(T1 t1, T2 t2, T3 t3) { ...

2
Эксперт Python
 Аватар для dondublon
4652 / 2072 / 366
Регистрация: 17.03.2012
Сообщений: 10,182
Записей в блоге: 6
26.05.2012, 21:48
создание пар можно делать по разному, я бы сделал так:

F#
1
2
3
4
5
6
7
8
9
10
11
12
open System
 
[<EntryPoint>]
let main(args: string[]) =
    let vala = [1..20]
    let valb = [1..20]
    let pairs = seq {for a in vala do for b in valb do yield (a, b)}
    for vv in pairs do
        Console.WriteLine(vv.ToString())
 
    Console.ReadKey() |> ignore
    0
обработку засовываешь внутрь цикла по pairs, короче, дальше сам.

Добавлено через 20 минут
вариант 2:

F#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
open System
 
let gipotenuza a b = Math.Sqrt( (float)(a*a+b*b))
let isInteger (a: float) = Math.Round( a) = a
 
[<EntryPoint>]
let main(args: string[]) =
    let vala = [1..20]
    let valb = [1..20]
    let pairs = seq {
        for a in vala do 
            for b in valb do 
                let c = gipotenuza a b
                if isInteger c then
                    yield (a, b, gipotenuza a b)}
    
   
            
    for vv in pairs do
        Console.WriteLine(vv )
        
 
    Console.ReadKey() |> ignore
    0
0
101 / 101 / 12
Регистрация: 21.11.2011
Сообщений: 169
31.05.2012, 12:33
F#
1
2
3
4
5
6
7
8
9
10
11
12
13
open System
 
do
    let n = 20
    Seq.initInfinite((+)1) 
    |> Seq.collect (fun a -> {1..a} 
                             |> Seq.map (fun b -> a, b, a * a + b * b |> float |> Math.Sqrt))
    |> Seq.filter  (fun (_, _, h) -> Math.Round h = h)
    |> Seq.collect (fun (a, b, h) -> seq { yield b, a, int h; yield a, b, int h })
    |> Seq.take n |> Seq.toArray
    |> printfn "%A"
 
    Console.ReadKey() |> ignore
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
31.05.2012, 12:33
Помогаю со студенческими работами здесь

Задание на тему структуры
Добрый день, мне нужно написать программу(проект). Проект: Почта (ценное письмо) Создайте структуру letter со следующими полями: Тип...

Задание на тему классы
реализовать класс студент Свойства 1 ФИО 2 Группа 3 Средний бал Методы 1 Print 2 Zapoln-заполняет класс ...

Задание на тему Массивы
Найдите в одномерном массиве два элемента,сумма которых максимальна,затем удалитевсе элементы,предшесвующие тому элементу из этих двух,у...

Задание на тему Указатели
требуется решить такую задачу на C++ : Имеются N-точек, соединенных отрезками. Составить программу, находящую наименьший путь от одной...

Задание на тему файлы
Помогите пожалйста кто чем-сможет буду очень благодарен! Задание. Дан текстовый файл. Заменить в нем все подряд идущие пробелы на один...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru