Форум программистов, компьютерный форум CyberForum.ru

Вывод результата в html файл - C++

Восстановить пароль Регистрация
 
Iworb
анимешник++
 Аватар для Iworb
93 / 60 / 2
Регистрация: 03.11.2009
Сообщений: 411
15.10.2011, 15:42     Вывод результата в html файл #1
День добрый, форумчане!
У меня есть небольшая программка по моделированию с использованием генератора случайных чисел, но это особо не важно, важнее то, что она выдаёт результат в текстовый файлик.
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#include <iostream>
#include <time.h>
#include <fstream>
#include <vector>
#include "Rand.h"
using namespace std;
 
int main()
{
    setlocale(LC_CTYPE,"rus");
    sgenrand(time(NULL));
    int n=2000;//посылки
    int ok=0; //количество восстановленных
    int fl=0; //количество ошибок всего
    int one=0, bad=0; //one - с одной ошибкой в last, bad - попытались исправить, не вышло, ok_0 - кол-во исправленных с ошибкой на конце
    FILE * out;
    out = fopen("out.txt","w+");
    fprintf(out,"Всего %d посылок\n",n);
    for(int i=0;i<n;i++)
    {
        int first=0, last=0;
        for(int j=0;j<6;j++)
        {
            float r=genrand();
            if(r<=0.1)
            {
                if(j<4) //байт один из первых
                    first++;
                else
                    last++;
                fprintf(out,"-");
            }
            else
                fprintf(out,"+");
            fprintf(out," %6.4f ",r);
        }
        fl=fl+first+last;
        fprintf(out," | 1st=%d | 2nd=%d |", first, last);
        if(first<=2&&last<2)
        {
            if(!last)
            {
                ok++;
                fprintf(out," ++++ |\n");
                continue;
            }
            if(last==1)
            {
                float r=genrand();
                one++;
                if(r>0.5)
                {
                    ok++;
                    fprintf(out," +ok+ |\n");
                }
                else
                {
                    bad++;
                    fprintf(out," -no- |\n");
                }
            }
        }
        else
            fprintf(out," ---- |\n");
    }
    printf("Всего %d посылок, из них %d правильных.(%5.2f%c)\nВероятность ошибки в разрядах: %6.4f\nВероятность не исправления ошибочного сообщения: %6.4f\n",
        n,ok,((ok/(float)n)*100),'%',((float)fl)/(6*n), ((float)bad)/(one));
    fprintf(out,"Всего %d посылок, из них %d правильных.(%5.2f%c)\nВероятность ошибки в разрядах: %6.4f\nВероятность не исправления ошибочного сообщения: %6.4f\n",
        n,ok,((ok/(float)n)*100),'%',((float)fl)/(6*n), ((float)bad)/(one));
    fclose(out);
    return 1;
}
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#include<stdio.h>
 
/* Period parameters */  
#define N 624
#define M 397
#define MATRIX_A 0x9908b0df   /* constant vector a */
#define UPPER_MASK 0x80000000 /* most significant w-r bits */
#define LOWER_MASK 0x7fffffff /* least significant r bits */
 
/* Tempering parameters */   
#define TEMPERING_MASK_B 0x9d2c5680
#define TEMPERING_MASK_C 0xefc60000
#define TEMPERING_SHIFT_U(y)  (y >> 11)
#define TEMPERING_SHIFT_S(y)  (y << 7)
#define TEMPERING_SHIFT_T(y)  (y << 15)
#define TEMPERING_SHIFT_L(y)  (y >> 18)
 
static unsigned long mt[N]; /* the array for the state vector  */
static int mti=N+1; /* mti==N+1 means mt[N] is not initialized */
 
/* initializing the array with a NONZERO seed */
void sgenrand(unsigned long seed)
{
    /* setting initial seeds to mt[N] using         */
    /* the generator Line 25 of Table 1 in          */
    /* [KNUTH 1981, The Art of Computer Programming */
    /*    Vol. 2 (2nd Ed.), pp102]                  */
    mt[0]= seed & 0xffffffff;
    for (mti=1; mti<N; mti++)
        mt[mti] = (69069 * mt[mti-1]) & 0xffffffff;
}
 
double /* generating reals */
/* unsigned long */ /* for integer generation */
genrand()
{
    unsigned long y;
    static unsigned long mag01[2]={0x0, MATRIX_A};
    /* mag01[x] = x * MATRIX_A  for x=0,1 */
 
    if (mti >= N) { /* generate N words at one time */
        int kk;
 
        if (mti == N+1)   /* if sgenrand() has not been called, */
            sgenrand(4357); /* a default initial seed is used   */
 
        for (kk=0;kk<N-M;kk++) {
            y = (mt[kk]&UPPER_MASK)|(mt[kk+1]&LOWER_MASK);
            mt[kk] = mt[kk+M] ^ (y >> 1) ^ mag01[y & 0x1];
        }
        for (;kk<N-1;kk++) {
            y = (mt[kk]&UPPER_MASK)|(mt[kk+1]&LOWER_MASK);
            mt[kk] = mt[kk+(M-N)] ^ (y >> 1) ^ mag01[y & 0x1];
        }
        y = (mt[N-1]&UPPER_MASK)|(mt[0]&LOWER_MASK);
        mt[N-1] = mt[M-1] ^ (y >> 1) ^ mag01[y & 0x1];
 
        mti = 0;
    }
  
    y = mt[mti++];
    y ^= TEMPERING_SHIFT_U(y);
    y ^= TEMPERING_SHIFT_S(y) & TEMPERING_MASK_B;
    y ^= TEMPERING_SHIFT_T(y) & TEMPERING_MASK_C;
    y ^= TEMPERING_SHIFT_L(y);
 
    return ( (double)y / (unsigned long)0xffffffff ); /* reals */
    /* return y; */ /* for integer generation */
}
Подскажите, как вывести результаты в HTML? Интересует таблица (и заливка ячеек), цвет текста, да и вообще - как реализуется.
Заранее благодарю.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.10.2011, 15:42     Вывод результата в html файл
Посмотрите здесь:

C++ Вывод результата програмы в файл ".xls" (Excel)
Вывод результата system в файл C++
C++ ввод и вывод результата в файл
C++ Функция с++ (работа с длинными числами - вывод результата в файл)
Вывод результата C++
C++ Вывод результата
C++ Вывод результата
Вывод дробного результата C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему

Метки
c++, html, работа с файлами, работа с файлами в си, случайные числа
Опции темы

Текущее время: 19:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru