Вот вспомнил студенческие годы.
Есть массив чисел r[N+1] от 0 до N требуется написать алгоритм решета
эратосфена (т.е. обнулить все составные числа) используя наименьшее
кол-во различных знаков.
После недолгих раздумий написал прогу. В алгоритме задействовано всего
9 знаков: r[f]-;=() оператор for и один раз знак "<". В принципе можно
было бы обойтись и без "<", но тогда алгоритм будет убогим, а так он
компилируется в разумную схему %).
#include<stdio.h>
#define f 99
main(){
int r[f-(-(f==f))];
for(r[f]=-(f==f);(r[f]-=-(f==f))-f;)r[r[f]]=r[f];
for(r[f-f]=r[f];--r[f-f]-(f==f);)
for(r[f==f]=r[f-f];(r[f==f]-=-r[f-f])<=f;)r[r[f==f]]=f-f;
r[f==f]=r[f-f]--;
//view output
int o;
FILE * q=fopen("q.txt","w+");
for(o=0;o<=f;o++)fprintf(q,"%d ",r[o]);
fclose(q);
};
А Вам слабо, в этом же стиле чего-нибудь написать?
Похожие темы
- Форум alsa запись в mp3 (2010)
- Форум Простой вопрос насчёт списков для профессионалов . (2014)
- Форум Исследование производительности *printf и вывода в файл (2006)
- Форум Открывается конкурс дураков на самую нечитабельную программу (2017)
- Форум Не считывает файл до конца? (2019)
- Форум Вопрос сишнику (2004)
- Форум Сишники, помогайте. (2012)
- Форум маленькая програмка чтобы вытащить числа из лога (2009)
- Форум Слака шутит? (2013)
- Форум Интернеты шутят. (2015)