Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Елка:C++ / 25 сообщений из 28, страница 1 из 2
31.12.2014, 13:36
    #38847143
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Пускай за меня скажет код.

Код: plaintext
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.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <signal.h>
#include <io.h>

/* 31.12.2014 (mayton) - Happy new year, my dear geeks! HNE! */ 

void pc(int w,char c){
     while(w--) putchar(c);
}

void pcr(int w,char c,const char *r,float g){
     int l=strlen(r);
     while(w--) {
        float f=(float)rand()/0xFFFF;
        if (f>g) putchar(c);
        else putchar(*(r + rand()%l));
     }
}


void pe(int w,int l1,int l2){
     int i;
     for(i=l1;i<l2;i++){
        int o=w-i;
        pc(o,' ');
        pcr(i,'/',"@&!+",0.1);
        pc(1,'|');
        pcr(i,'\\',"@&!+",0.1);
        putchar('\n');        
     }
}

int main(int argc,char **arg, char **env){
     int i;
     for(i=0;i<20;i++){
	pe(40,i,3+i);
     };
     return 0;
}



Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
                                        |
                                       +|@
                                      //|\\
                                       /|\
                                      &/|\\
                                     +/@|\\&
                                      !/|\\
                                     /!/|\@\
                                    ////|\\\\
                                     &//|\\\
                                    ////|\\\@
                                   !@///|\\\\\
                                    ////|\\&\
                                   ////@|\\\\\
                                  /!/&/+|!\\\&\
...
Рейтинг: 0 / 0
31.12.2014, 14:00
    #38847172
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
mayton,

что за io.h ?
Не собирается с ним. Без него собирается и работает, но не так, как у тебя (без игрушек).
Linux.
...
Рейтинг: 0 / 0
31.12.2014, 14:02
    #38847174
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Хех копипаста хедеров...

Но с игрушками - это наверное реализация rand()
...
Рейтинг: 0 / 0
31.12.2014, 14:02
    #38847175
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Должно быть <sys/io.h>

Но игрушки всё равно не появляются.
...
Рейтинг: 0 / 0
31.12.2014, 14:04
    #38847177
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Код: plaintext
1.
2.
3.
4.
cc.exe (GCC) 4.8.1
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
...
Рейтинг: 0 / 0
31.12.2014, 14:15
    #38847186
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Вобщем в реализации моего RTL/Compiller rand() выдаёт целые от 0 до 32767.
...
Рейтинг: 0 / 0
31.12.2014, 14:18
    #38847187
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
mayton,

Код: plaintext
1.
2.
3.
4.
5.
ziv@mole:~/x/cpp/hny$ gcc --version
gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
Copyright (C) 2011 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
...
Рейтинг: 0 / 0
31.12.2014, 14:21
    #38847188
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Илья. Палево может быть в этой строке.

Код: plaintext
1.
float f=(float)rand()/0xFFFF;



Пока теряюсь в догадках. У нас основная разница - это операционка.
...
Рейтинг: 0 / 0
31.12.2014, 14:22
    #38847189
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Короче, вот:

Код: plaintext
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.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <signal.h>
#include <sys/io.h>

/* 31.12.2014 (mayton) - Happy new year, my dear geeks! HNE! */

void pc(int w,char c){
  while(w--) putchar(c);
}

void pcr(int w,char c,const char *r,float g){
  int l=strlen(r);
  while(w--) {
    float f=(((float)rand())*0xFFFF/RAND_MAX)/0xFFFF;
    if (f>g) putchar(c);
    else putchar(*(r + rand()%l));
  }
}


void pe(int w,int l1,int l2){
  int i;
  for(i=l1;i<l2;i++){
    int o=w-i;
    pc(o,' ');
    pcr(i,'/',"@&!+",0.1);
    pc(1,'|');
    pcr(i,'\\',"@&!+",0.1);
    putchar('\n');
  }
}

int main(int argc,char **arg, char **env){
  int i;
  for(i=0;i<20;i++){
    pe(40,i,3+i);
  };
  return 0;
}




Код: plaintext
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.
ziv@mole:~/x/cpp/hny$ emacs -nw hny.c && gcc -o hny hny.c && ./hny
                                        |
                                       /|\
                                      //|\\
                                       /|\
                                      //|\\
                                     ///|\\\
                                      //|@\
                                     ///|\\\
                                    ////|\\\\
                                     ///|\\\
                                    ////|\!\+
                                   ///!/|&\\\\
                                    ////|\\!\
                                   /////|\\\\\
                                  //////|\\\\\\
                                   /////|\\\\\
                                  //////|\\\\\\
                                 ///////|\\\\\\\
                                  //////|\\+&\\
                                 //////+|\!\\\\\
                                @/////@+|\\\\\\\\
                                 ////!//|\\\\\@\
                                ////////|\\\\@\\\
                               ////+////|\\\\\\\\\
                                //+/////|\\\\\+\\
                               /////////|\\\\\@\\@
                              //////////|&\\\\\\\\\
                               /////////|\\\\\\\\\
                              //////////|\\\\\\\\\\
                             ///////////|!\\\\@\\\\\
                              //////////|\\\\\\\\\&
                             /////@/////|&\\\\\!\\\\
                            ////////////|\\\\!\\\\\\\
                             ////&//////|\\\\\\\\\\\
                            ///!////////|\\\\+\\\\\\\
                           ///+/////&///|\\\\\\\\\\\\\
                            ////////////|\\\\\\\\\\\\
                           /////////////|\\\\\\@\\\\\\
                          +///////@/////|\+\\\\\\\\\\\\
                           /////////////|\\\\\\\\\\\\\
                          ////////////+/|\@!\\\\\\\\\\\
                         ///////////////|\\\\\\\!\\\\\\+
                          ///////!////!/|\\\\\\+\\\\\\\
                         ///&////&/!////|\\\\\\\\\\\&\\\
                        ////////////@///|\\\\\&\\\\\\\\!+
                         /////+//@///!//|\\\&\\\!\\\\\+\
                        ///&/////////!//|\\\\\\\\\\+\\\\\
                       /&//+////+///////|\\\\\\\\\\@\\\\\\
                        //////+/////////|\\\\\\\\\\\\\\\\
                       /////////!////!//|\\\\\\\\\\\\\\\\!
                      //////////////////|\+\\\\\!\\\\\\\\\\
                       //////////////&//|\\\\\\\\+\\\\\\\\
                      //////////////////|\\+@\+\\\\+\\\\\\\
                     /@///////////&//+//|\\&\\\\\\\\\&\\!\\\
                      //+/!/////////////|\\\\\\\\\\\\\\\\\\
                     /@///////////////@/|\\\\+\\\\\\\\\\\\@\
                    ////////////////////|\\\\&\\&\\\\\\\\+\\\
                     ////////+//////////|\!\\\\\\\\\\\\\!\&&
                    ///////@/////////@//|\\\\\\\\\\\@\\\\\\\\
                   ////@//&/////////////|\\\\\\+\@\@\\+\\\\\\\


Всех с наступающим новым годом!
Ура!
...
Рейтинг: 0 / 0
31.12.2014, 14:22
    #38847190
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
maytonИлья. Палево может быть в этой строке.

Код: plaintext
1.
float f=(float)rand()/0xFFFF;



Пока теряюсь в догадках. У нас основная разница - это операционка.

Конечно, потому что НОРМИРОВАТЬ надо !
...
Рейтинг: 0 / 0
31.12.2014, 14:32
    #38847202
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
 //#include <sys/io.h> вроде у меня не нужно

/* 31.12.2014 (mayton) - Happy new year, my dear geeks! HNE! */

void pc(int w,char c){
  while(w--) putchar(c);
}

void pcr(int w,char c,const char *r,float g){
  int l=strlen(r);
  while(w--) {
    float f=(float)rand()/RAND_MAX; Собсно этот ранд-макс я и искал. Спс за константу.
    if (f>g) putchar(c);
    else putchar(*(r + rand()%l));
  }
}
...
Рейтинг: 0 / 0
30.12.2015, 13:34
    #39140622
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Здарова други.

Илья. Белый Сова. Док. Саша-Меркурий. Сибиряков. Дима-Т. Изопропил. Руслан. Игорь (Wolfenstein).

Прошёл год.

Пора подводить неутешительные итоги

Как улучшилась С++Ёлка? Какие планы на следующий год?

И вообще.
...
Рейтинг: 0 / 0
30.12.2015, 13:56
    #39140640
Cplus11
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Даешь елку на чистом С++ 11 :)
...
Рейтинг: 0 / 0
30.12.2015, 14:43
    #39140678
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Да што там 11. Давайте уже на С++14.
...
Рейтинг: 0 / 0
30.12.2015, 14:52
    #39140682
&lt;vector&gt;
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Хотелось бы елку на последнем стандарте (+STL). А победитель тот, у кого строк кода меньше всего получиться, а елка красивая...
...
Рейтинг: 0 / 0
30.12.2015, 15:27
    #39140700
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Всякий пионер знает что любую (почти) прогу на сях мона в 1 строку укатать. Джон Кармак был
любитель подобных приколов. Однако-ж я думаю что критери победы должны быть другие.
...
Рейтинг: 0 / 0
30.12.2015, 21:35
    #39140862
STLalgoritm
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Не когда обсуждать, Новый Год на носу! :) Хотелось бы ёлку на STL!
...
Рейтинг: 0 / 0
30.12.2015, 23:59
    #39140918
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
скучные вы все, на OpenGL ёлка должа быть
...
Рейтинг: 0 / 0
31.12.2015, 00:29
    #39140936
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Изопропил, давай. Накидай инициализацию. Я честно не помню как там чё.
...
Рейтинг: 0 / 0
31.12.2015, 12:02
    #39141026
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
mayton,

игрушки развешивать надо

Код: plaintext
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.
73.
74.
75.
76.
#include <stdio.h>
#include <stdlib.h>
#include <GL/glut.h>

void init(void)
{
	glShadeModel(GL_FLAT);
}
void display()
{
	glClearColor(1.0, 1.0, 1.0, 1);
	glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
	glColor3d(0, 1, 0);
	glPushMatrix();
	glTranslated(0.0,-1.66, -6);
	glRotated(120, -1.0, 0.0, 0.0);
	glutSolidCone(1, 4, 50, 50);
	glutWireCone(1, 4, 20, 20);
	glPopMatrix();
	glutSwapBuffers();
}
void resize(int w, int h)
{
	const float ar = (float)w / (float)h;
	glViewport(0, 0, (GLsizei)w, (GLsizei)h);
	glMatrixMode(GL_PROJECTION);
	glLoadIdentity();
	glFrustum(-ar, ar, -1.0, 1.0, 3.0, 100.0);
	glMatrixMode(GL_MODELVIEW);
	glLoadIdentity();
}
const GLfloat light_ambient[] = { 0.0f, 0.0f, 0.0f, 1.0f };
const GLfloat light_diffuse[] = { 1.0f, 1.0f, 1.0f, 1.0f };
const GLfloat light_specular[] = { 1.0f, 1.0f, 1.0f, 1.0f };
const GLfloat light_position[] = { 2.0f, 5.0f, 5.0f, 0.0f };

const GLfloat mat_ambient[] = { 0.7f, 0.7f, 0.7f, 1.0f };
const GLfloat mat_diffuse[] = { 0.8f, 0.8f, 0.8f, 1.0f };
const GLfloat mat_specular[] = { 1.0f, 1.0f, 1.0f, 1.0f };
const GLfloat high_shininess[] = { 100.0f };

int main(int argc, char *argv[]) {

	glutInit(&argc, argv);
	glutInitWindowSize(640, 480);
	glutInitWindowPosition(10, 10);
	glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
	glutCreateWindow("Picea");

	glutReshapeFunc(resize);
	glutDisplayFunc(display);

	glEnable(GL_CULL_FACE);
	glCullFace(GL_BACK);

	glEnable(GL_DEPTH_TEST);
	glDepthFunc(GL_LESS);

	glEnable(GL_LIGHT0);
	glEnable(GL_NORMALIZE);
	glEnable(GL_COLOR_MATERIAL);
	glEnable(GL_LIGHTING);

	glLightfv(GL_LIGHT0, GL_AMBIENT, light_ambient);
	glLightfv(GL_LIGHT0, GL_DIFFUSE, light_diffuse);
	glLightfv(GL_LIGHT0, GL_SPECULAR, light_specular);
	glLightfv(GL_LIGHT0, GL_POSITION, light_position);
	
	glMaterialfv(GL_FRONT, GL_AMBIENT, mat_ambient);
	glMaterialfv(GL_FRONT, GL_DIFFUSE, mat_diffuse);
	glMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular);
	glMaterialfv(GL_FRONT, GL_SHININESS, high_shininess);
	
	glutMainLoop();
	return 0;
}

...
Рейтинг: 0 / 0
11.01.2016, 10:28
    #39144298
SashaMercury
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
mayton Здарова други.

Илья. Белый Сова. Док. Саша-Меркурий. Сибиряков. Дима-Т. Изопропил. Руслан. Игорь (Wolfenstein).

Прошёл год.

Пора подводить неутешительные итоги

Как улучшилась С++Ёлка? Какие планы на следующий год?

И вообще.


Спасибо C:
И вас с уже наступившим новым годом! Мне кажется 2015 год был неплохим годом для Сообщества. Скорее даже интересным. Жаль что практически перестал появляться Анатолий. Но лично я очень рад тому, что все остальные тут. Надеюсь 2016 год будет хорошим для нас.

PS
Из планов могу пообещать только одно, что во втором квартале этого года, а может быть и раньше, выделю время и переведу ту статью до конца. C Traps and Pitfails.
...
Рейтинг: 0 / 0
11.01.2016, 11:55
    #39144407
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Изопропилскучные вы все, на OpenGL ёлка должа быть
чета я под линцхом так еду и не собрал...
glut не хочет линковаться...
...
Рейтинг: 0 / 0
11.01.2016, 13:14
    #39144513
CEMb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
Изопропилигрушки развешивать надо

Ёлка-редактор, c++, WinAPI, GDI

в этом прошлом году сделал возможность грузить свою ёлку. Или "ёлку", кому на чём нравится развешивать :)
...
Рейтинг: 0 / 0
11.01.2016, 13:23
    #39144518
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
CEMb, нечитал. Но нутром чую что это "не спортивно". Не?
...
Рейтинг: 0 / 0
11.01.2016, 13:44
    #39144536
CEMb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Елка:C++
mayton, в каком смысле, не спортивно?

кода там(по ссылке) нет (но, в принципе, могу дать код), просто сама реализация на чистых сях плюсе плюсе. Спорт там, например, в реализации той же графики. Просто заговорили про "навешивать", я не смог удержаться от выпендриться :)
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Елка:C++ / 25 сообщений из 28, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]