網頁

2016年10月14日 星期五

ex6 C++亂數練習







36 則留言:

  1. #include <iostream>
    #include <cstdlib>
    #include <random>
    #include <ctime>
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution<double> X(70, 10);
    double a[1000];
    double sum = 0;
    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];

    if (i % 10 == 9)cout << endl;
    }
    sum = sum / 1000.0;
    cout << "平均數:" << sum << endl;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i]) - (sum * sum);
    }
    sum2 = sum2 / 1000;
    double s = sqrt(sum2);
    cout << "標準差:" << s << endl;
    cout << (clock()-seed)/1000.0 <<"sec." << endl;
    system("Pause");
    return 0;
    }

    回覆刪除
  2. #include <iostream>
    #include <cstdlib>
    #include <random>
    #include <ctime>
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution<double> X(70, 10);
    double a[1000];
    double sum = 0;
    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];

    if (i % 10 == 9)cout << endl;
    }
    sum = sum / 1000.0;
    cout << "平均數:" << sum << endl;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i]) - (sum * sum);
    }
    sum2 = sum2 / 1000;
    double s = sqrt(sum2);
    cout << "標準差:" << s << endl;
    cout << (clock()-seed)/1000.0 <<"sec." << endl;
    system("Pause");
    return 0;
    }

    回覆刪除
  3. #include <iostream>
    #include <cstdlib>
    #include <random>
    #include <ctime>
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution<double> X(70, 10);
    double a[1000];
    double sum = 0;
    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];

    if (i % 10 == 9)cout << endl;
    }
    sum = sum / 1000.0;
    cout << "平均數:" << sum << endl;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i]) - (sum * sum);
    }
    sum2 = sum2 / 1000;
    double s = sqrt(sum2);
    cout << "標準差:" << s << endl;
    cout << (clock()-seed)/1000.0 <<"sec." << endl;
    system("Pause");
    return 0;
    }

    回覆刪除
  4. #include <iostream>
    #include<cstdlib>
    #include<random>
    #include<ctime>
    #include<cmath>
    using namespace std;
    int main(){
    int seed = clock();
    mt19937_64 gen(seed);

    normal_distribution<double> x(70, 10);
    int a[1000];
    double sum = 0;
    double s = 0;
    double sum2;
    for (int i = 0; i < 1000; i++){
    a[i] = (int)(round(x(gen)));
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9){
    cout << endl;
    }
    }
    sum2 = sum / 1000.0;
    for (int i = 0; i < 1000; i++){

    // s += (a[i] - sum2)*(a[i] - sum2);
    s += (a[i] * a[i]) - (sum2*sum2);
    }
    s /= 1000;
    s = sqrt(s);
    cout << sum2;
    cout << endl;
    cout << s;
    cout << endl;
    cout << (clock() - seed) / 1000.0 << "sec.\n";
    system("Pause");
    return (0);
    }

    回覆刪除
  5. b10233072 黃宥婕2016年10月14日 下午4:31

    #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9) cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  6. #include<iostream>
    #include<cstdlib>
    #include<random>
    #include<ctime>
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution<double> x(70, 10);
    int a[1000];
    double s = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = x(gen);
    cout << a[i] << "\t";
    s = a[i]+s;
    if (i % 10 == 9)cout << endl;
    }
    cout << (clock() - seed) / 10000.0 << "sec.\n";
    double av = s / 1000.0;

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] - av)*(a[i] - av);

    }
    double var = sum2 / 1000.0;
    double c = sqrt(var);
    cout << c << "標準差";
    cout << endl;
    system("Pause");
    return 0;
    }

    回覆刪除
  7. #include <iostream>
    #include <cstdlib>
    #include <random>
    #include <ctime>
    #include <cmath>
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution<double> dis(70, 10);
    double a[1000];
    double sum = 0;
    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = dis(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9) cout << endl;
    }
    double av = sum/1000.0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i]- av*av);
    }
    double var = sum2 / 1000.0;
    cout << sum / 1000.0 << endl;
    double s = sqrt(var);
    cout << s << endl;
    cout << (clock() - seed) / 1000.0 << "sec.\n";
    cout << endl;
    system("Pause");
    return 0;
    }

    回覆刪除
  8. #include
    #include
    #include
    #include
    #include
    using namespace std;
    int main(){
    int seed = clock();
    mt19937_64 gen(seed);

    normal_distribution x(70, 10);
    int a[1000];
    double sum = 0;
    double s = 0;
    double sum2;
    for (int i = 0; i < 1000; i++){
    a[i] = (int)(round(x(gen)));
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9){
    cout << endl;
    }
    }
    sum2 = sum / 1000.0;
    for (int i = 0; i < 1000; i++){
    s += (a[i] * a[i]) - (sum2*sum2);
    }
    s /= 1000;
    s = sqrt(s);
    cout << sum2;
    cout << endl;
    cout << s;
    cout << endl;
    cout << (clock() - seed) / 1000.0 << "sec.\n";
    system("Pause");
    return (0);
    }

    回覆刪除
  9. b10233073 楊博宇2016年10月14日 下午4:44

    #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9) cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  10. #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9) cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  11. b10233102 羅時宇2016年10月14日 下午4:45

    #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9) cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  12. #include <iostream>
    #include <cstdlib>
    #include <random>
    #include <ctime>
    #include <cmath>
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution<double>X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 100; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9)cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";
    system("Pause");
    return 0;
    }

    回覆刪除
  13. #include <iostream>
    #include<cstdlib>
    #include<random>
    #include<ctime>
    #include<cmath>
    using namespace std;
    int main(){
    int seed = clock();
    mt19937_64 gen(seed);

    normal_distribution<double> x(70, 10);
    int a[1000];
    double sum = 0;
    double s = 0;
    double sum2;
    for (int i = 0; i < 1000; i++){
    a[i] = (int)(round(x(gen)));
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9){
    cout << endl;
    }
    }
    sum2 = sum / 1000.0;
    for (int i = 0; i < 1000; i++){
    s += (a[i] * a[i]) - (sum2*sum2);
    }
    s /= 1000;
    s = sqrt(s);
    cout << sum2;
    cout << endl;
    cout << s;
    cout << endl;
    cout << (clock() - seed) / 1000.0 << "sec.\n";
    system("Pause");
    return (0);
    }

    回覆刪除
  14. b10233109 宋昱璋2016年10月14日 下午4:57

    #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9) cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  15. #include <iostream> //程式如果用到cout或cin就必須引用iostream
    #include <cstdlib>
    #include <random>
    #include <ctime>
    #include <cmath>
    using namespace std;

    int main(void) {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution<double> dis(70, 10);
    int a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = (int)(round(dis(gen)));
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9)cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";


    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << "\n";



    cout << (clock() - seed) / 1000.0 << "sec.\n";
    system("Pause");

    return 0;
    }

    回覆刪除
  16. B10233108 林宣瑋2016年10月14日 下午4:59

    #include <iostream>
    #include <cstdlib>
    #include <random>
    #include <ctime>
    #include <cmath>
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution<double> X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9)cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  17. #include <iostream>
    #include <cstdlib>
    #include <random>
    #include <ctime>
    #include <cmath>
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution<double>X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 100; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9)cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";
    system("Pause");
    return 0;
    }

    回覆刪除
  18. B10233082 唐偉強2016年10月14日 下午5:01

    #include <iostream>
    #include <cstdlib>
    #include <random>
    #include <ctime>
    #include <cmath>
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution<double> X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9)cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  19. #include
    #include
    #include
    #include
    #include
    using namespace std;
    int main(){
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distributionX(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9)cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2+=(a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  20. #include <iostream>
    #include <cstdlib>
    #include <random>
    #include <ctime>
    #include <cmath>
    using namespace std;

    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution<double> dis(70, 10);
    double a[100];
    double sum = 0;
    for (int i = 0; i < 100; i++){
    a[i] = (int)(round(dis(gen)));
    cout << a[i] << "\t";
    sum+= a[i];
    if (i % 10 == 9)cout << endl;
    }
    double av = sum / 100.0;
    cout <<"average= "<< av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 100; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 100.0;
    double s = sqrt(var);
    cout <<"standard deviation= "<< s << endl;
    cout << (clock()-seed/100.0)<<"sec. \n";
    system("pause");
    return 0;
    }

    回覆刪除
  21. #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9) cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  22. B10233139 陳鈺璇

    #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9) cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  23. #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9) cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  24. #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9) cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  25. b10233137
    #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9) cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  26. B10233169

    #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9) cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  27. B10233139

    #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9) cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  28. B10233169

    #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9) cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  29. #include <iostream>
    #include <cstdlib>
    #include <random>
    #include <ctime>
    #include <cmath>
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution<double> X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9)cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  30. #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];

    if (i % 10 == 9)cout << endl;
    }
    sum = sum / 1000.0;
    cout << "平均數:" << sum << endl;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i]) - (sum * sum);
    }
    sum2 = sum2 / 1000;
    double s = sqrt(sum2);
    cout << "標準差:" << s << endl;
    cout << (clock()-seed)/1000.0 <<"sec." << endl;
    system("Pause");
    return 0;
    }

    回覆刪除
  31. #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];

    if (i % 10 == 9)cout << endl;
    }
    sum = sum / 1000.0;
    cout << "平均數:" << sum << endl;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i]) - (sum * sum);
    }
    sum2 = sum2 / 1000;
    double s = sqrt(sum2);
    cout << "標準差:" << s << endl;
    cout << (clock()-seed)/1000.0 <<"sec." << endl;
    system("Pause");
    return 0;
    }

    回覆刪除
  32. #include
    #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];
    if (i % 10 == 9)cout << endl;
    }
    double av = sum / 1000.0;
    cout << av << "\n";

    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i] - av*av);
    }
    double var = sum2 / 1000.0;
    double s = sqrt(var);
    cout << s << endl;

    cout << (clock() - seed) / 1000.0 << "sec.\n";

    system("Pause");
    return 0;
    }

    回覆刪除
  33. ImageMatrix convert2green(ImageMatrix m){
    ImageMatrix mm = ImageMatrix(m.height, m.width);
    for (int y = 0; y < m.height; y++)
    for (int x = 0; x < m.rowsize; x += 3){
    BYTE B = m.term[y*m.rowsize + x + 0];
    BYTE G = m.term[y*m.rowsize + x + 1];
    BYTE R = m.term[y*m.rowsize + x + 2];
    mm.term[y*m.rowsize + x + 0] = mm.term[y*m.rowsize + x + 2] = 0;
    mm.term[y*m.rowsize + x + 1] = G;
    }
    return mm;
    }
    ImageMatrix convert2red(ImageMatrix m){
    ImageMatrix mm = ImageMatrix(m.height, m.width);
    for (int y = 0; y < m.height; y++)
    for (int x = 0; x < m.rowsize; x += 3){
    BYTE B = m.term[y*m.rowsize + x + 0];
    BYTE G = m.term[y*m.rowsize + x + 1];
    BYTE R = m.term[y*m.rowsize + x + 2];

    mm.term[y*m.rowsize + x + 0] = mm.term[y*m.rowsize + x + 1] = 0;
    mm.term[y*m.rowsize + x +2] = G;
    }
    return mm;
    }
    ImageMatrix convert2blue(ImageMatrix m){
    ImageMatrix mm = ImageMatrix(m.height, m.width);
    for (int y = 0; y < m.height; y++)
    for (int x = 0; x < m.rowsize; x += 3){
    BYTE B = m.term[y*m.rowsize + x + 0];
    BYTE G = m.term[y*m.rowsize + x + 1];
    BYTE R = m.term[y*m.rowsize + x + 2];
    mm.term[y*m.rowsize + x +1] = mm.term[y*m.rowsize + x + 2] = 0;
    mm.term[y*m.rowsize + x + 0] =G;
    }
    return mm;
    }
    ImageMatrix convert2half(ImageMatrix m){
    ImageMatrix mm = ImageMatrix(m.height, m.width);
    for (int y = 0; y<m.height; y++)
    for (int x = 0; x<m.rowsize; x += 3){
    BYTE B = m.term[y*m.rowsize + x];
    BYTE G = m.term[y*m.rowsize + x + 1];
    BYTE R = m.term[y*m.rowsize + x + 2];
    BYTE gray = (BYTE)(0.2989*R + 0.5870*G + 0.1140*B + 0.5);
    if (y<m.height/2)
    mm.term[y*m.rowsize + x] = mm.term[y*m.rowsize + x + 1] =
    mm.term[y*m.rowsize + x + 2] = gray;
    else{
    mm.term[y*m.rowsize + x + 0] = B;
    mm.term[y*m.rowsize + x + 1] = G;
    mm.term[y*m.rowsize + x + 2] = R;
    }
    }
    return mm;
    }

    回覆刪除
  34. ImageMatrix convert2green(ImageMatrix m){
    ImageMatrix mm = ImageMatrix(m.height, m.width);
    for (int y = 0; y < m.height; y++)
    for (int x = 0; x < m.rowsize; x += 3){
    BYTE B = m.term[y*m.rowsize + x + 0];
    BYTE G = m.term[y*m.rowsize + x + 1];
    BYTE R = m.term[y*m.rowsize + x + 2];
    mm.term[y*m.rowsize + x + 0] = mm.term[y*m.rowsize + x + 2] = 0;
    mm.term[y*m.rowsize + x + 1] = G;
    }
    return mm;
    }
    ImageMatrix convert2red(ImageMatrix m){
    ImageMatrix mm = ImageMatrix(m.height, m.width);
    for (int y = 0; y < m.height; y++)
    for (int x = 0; x < m.rowsize; x += 3){
    BYTE B = m.term[y*m.rowsize + x + 0];
    BYTE G = m.term[y*m.rowsize + x + 1];
    BYTE R = m.term[y*m.rowsize + x + 2];

    mm.term[y*m.rowsize + x + 0] = mm.term[y*m.rowsize + x + 1] = 0;
    mm.term[y*m.rowsize + x + 2] = G;
    }
    return mm;
    }
    ImageMatrix convert2blue(ImageMatrix m){
    ImageMatrix mm = ImageMatrix(m.height, m.width);
    for (int y = 0; y < m.height; y++)
    for (int x = 0; x < m.rowsize; x += 3){
    BYTE B = m.term[y*m.rowsize + x + 0];
    BYTE G = m.term[y*m.rowsize + x + 1];
    BYTE R = m.term[y*m.rowsize + x + 2];
    mm.term[y*m.rowsize + x + 1] = mm.term[y*m.rowsize + x + 2] = 0;
    mm.term[y*m.rowsize + x + 0] = G;
    }
    return mm;
    }
    ImageMatrix convert2half(ImageMatrix m){
    ImageMatrix mm = ImageMatrix(m.height, m.width);
    for (int y = 0; y<m.height; y++)
    for (int x = 0; x<m.rowsize; x += 3){
    BYTE B = m.term[y*m.rowsize + x];
    BYTE G = m.term[y*m.rowsize + x + 1];
    BYTE R = m.term[y*m.rowsize + x + 2];
    BYTE gray = (BYTE)(0.2989*R + 0.5870*G + 0.1140*B + 0.5);
    if (y<m.height / 2)
    mm.term[y*m.rowsize + x] = mm.term[y*m.rowsize + x + 1] =
    mm.term[y*m.rowsize + x + 2] = gray;
    else{
    mm.term[y*m.rowsize + x + 0] = B;
    mm.term[y*m.rowsize + x + 1] = G;
    mm.term[y*m.rowsize + x + 2] = R;
    }
    }
    return mm;
    }

    回覆刪除
  35. B10233082 唐偉強2016年12月16日 下午5:20

    #include
    #include
    #include
    #include
    using namespace std;
    int main()
    {
    int seed = clock();
    mt19937_64 gen(seed);
    normal_distribution X(70, 10);
    double a[1000];
    double sum = 0;
    double sum2 = 0;
    for (int i = 0; i < 1000; i++){
    a[i] = X(gen);
    cout << a[i] << "\t";
    sum += a[i];

    if (i % 10 == 9)cout << endl;
    }
    sum = sum / 1000.0;
    cout << "平均數:" << sum << endl;
    for (int i = 0; i < 1000; i++){
    sum2 += (a[i] * a[i]) - (sum * sum);
    }
    sum2 = sum2 / 1000;
    double s = sqrt(sum2);
    cout << "標準差:" << s << endl;
    cout << (clock()-seed)/1000.0 <<"sec." << endl;
    system("Pause");
    return 0;
    }

    回覆刪除
  36. ImageMatrix convert2green(ImageMatrix m){
    ImageMatrix mm = ImageMatrix(m.height, m.width);
    for (int y = 0; y < m.height; y++)
    for (int x = 0; x < m.rowsize; x += 3){
    BYTE B = m.term[y*m.rowsize + x + 0];
    BYTE G = m.term[y*m.rowsize + x + 1];
    BYTE R = m.term[y*m.rowsize + x + 2];
    mm.term[y*m.rowsize + x + 0] = mm.term[y*m.rowsize + x + 2] = 0;
    mm.term[y*m.rowsize + x + 1] = G;
    }
    return mm;
    }
    ImageMatrix convert2red(ImageMatrix m){
    ImageMatrix mm = ImageMatrix(m.height, m.width);
    for (int y = 0; y < m.height; y++)
    for (int x = 0; x < m.rowsize; x += 3){
    BYTE B = m.term[y*m.rowsize + x + 0];
    BYTE G = m.term[y*m.rowsize + x + 1];
    BYTE R = m.term[y*m.rowsize + x + 2];

    mm.term[y*m.rowsize + x + 0] = mm.term[y*m.rowsize + x + 1] = 0;
    mm.term[y*m.rowsize + x +2] = G;
    }
    return mm;
    }
    ImageMatrix convert2blue(ImageMatrix m){
    ImageMatrix mm = ImageMatrix(m.height, m.width);
    for (int y = 0; y < m.height; y++)
    for (int x = 0; x < m.rowsize; x += 3){
    BYTE B = m.term[y*m.rowsize + x + 0];
    BYTE G = m.term[y*m.rowsize + x + 1];
    BYTE R = m.term[y*m.rowsize + x + 2];
    mm.term[y*m.rowsize + x +1] = mm.term[y*m.rowsize + x + 2] = 0;
    mm.term[y*m.rowsize + x + 0] =G;
    }
    return mm;
    }
    ImageMatrix convert2half(ImageMatrix m){
    ImageMatrix mm = ImageMatrix(m.height, m.width);
    for (int y = 0; y<m.height; y++)
    for (int x = 0; x<m.rowsize; x += 3){
    BYTE B = m.term[y*m.rowsize + x];
    BYTE G = m.term[y*m.rowsize + x + 1];
    BYTE R = m.term[y*m.rowsize + x + 2];
    BYTE gray = (BYTE)(0.2989*R + 0.5870*G + 0.1140*B + 0.5);
    if (y<m.height/2)
    mm.term[y*m.rowsize + x] = mm.term[y*m.rowsize + x + 1] =
    mm.term[y*m.rowsize + x + 2] = gray;
    else{
    mm.term[y*m.rowsize + x + 0] = B;
    mm.term[y*m.rowsize + x + 1] = G;
    mm.term[y*m.rowsize + x + 2] = R;
    }
    }
    return mm;
    }

    回覆刪除

HTML 編輯器