|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
08.05.2023, 21:44 | #1 |
Новичок
Джуниор
Регистрация: 08.05.2023
Сообщений: 1
|
Нужно написать программу, применяющую метод Неймана (метод отказа) к функции на СИ
Всем привет. На третьем курсе задали написать программу на СИ, которая применяет метод Неймана к функции. У нас до этого программирования вообще не было, я почти что нуль. Тем не менее, получилось что-то вроде этого:
#include <stdio.h> #include "math.h" #include "stdlib.h" #include "io.h" #include "conio.h" float fun(float x) { float q; q = x * exp(-x * x / 2); return q; } int main() { FILE *fp; if ((fopen_s(&fp, "D:\camera\file.txt", "w")) != 0) { printf("error"); } else { int i; float a, b, v, Umax, d, a1, b1, y1, y2, y, f1, f2, x, q, h; a = 0; b = 3.46; v = 0.01; Umax = 0; while ((b - a) > v) { d = (b - a) / 3.0; a1 = a + d; b1 = b - d; y1 = fun(a1); y2 = fun(b1); if (y1 >= y2) { Umax = y2; b = b1; } else { Umax = y1; a = a1; } } h = Umax * 0.01; x = a; y = fun(x); while (y > h) { x = x + v; y = fun(x); } b = x; for (int i = 0; i <= 99; i++) { do { f1 = rand() / 65535.0; x = a + (b - a)*f1; y = fun(x); f2 = rand() / 65535.0*Umax; } while (f2 > y); fprintf_s(fp, "%f\n", f2); printf("%f\n", f2); } fclose(fp); } return 0; Вроде компилируется, но в файл не выводится. Помогите, пожалуйста. И подскажите за одно учебники какие-нибудь по Си, а то в интернете в основном СИ++ все педалируют. |
08.05.2023, 22:05 | #2 |
Участник клуба
Регистрация: 17.04.2022
Сообщений: 1,833
|
Для начала стоит взять отладчик и пройтись по программе в нем. А ещё стоит запускать программу не мышкой (двойным щелчком по исполняемому файлу), а вызывая её из консоли, чтобы она не закрывалась и оставался вывод программы на экране. Иначе вы зря сделали вывод в файл и в консоль одновременно.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Java | Нужно написать метод, работающий с бинарной матрицей | Прогги12345 | Помощь студентам | 3 | 13.06.2021 04:12 |
Помогите написать код в котором нужно заменить метод подсчёта на метод выбора и вставить ключ float[3] (файл вложен) | Sasha48 | Помощь студентам | 0 | 26.02.2017 12:03 |
Написать программу cимплекс-метод с искусственным базисом | dmitriegorovih | Фриланс | 2 | 18.10.2016 11:01 |
Симплекс-метод, реализация на делфи, нужно доработать программу | Laptiker | Помощь студентам | 0 | 24.05.2012 01:29 |
Написать программу через метод (C#) | corebitlol | Помощь студентам | 0 | 12.04.2012 13:25 |