Arama butonu
Bu konudaki kullanıcılar: 1 misafir
196
Cevap
12777
Tıklama
8
Öne Çıkarma
Cevap: Reddit, HN, Euler, DH gibi sitelerden iş görüşmesi soruları + ödev soruları (2. sayfa)
G
6 yıl
Er

2^8 bitin kombinasyonunu göstermekten pek farkı yok bunun harflerin yeri değişmiyor


int main()
{
char str[2][8]={{'A','B','C','D','E','F','G','H'},{'a','b','c','d','e','f','g','h'}};
for(int x=0;x<256;++x)
{
for (int i=0; i < 8; i++)
printf("%c",str[x >> i & 1 == 1 ][ i ]);
printf("
");
}
getchar();
return 0;
}

çıktı

ABCDEFGH
aBCDEFGH
AbCDEFGH
abCDEFGH
ABcDEFGH
aBcDEFGH
AbcDEFGH
abcDEFGH
ABCdEFGH
aBCdEFGH
AbCdEFGH
abCdEFGH
ABcdEFGH
aBcdEFGH
AbcdEFGH
abcdEFGH
ABCDeFGH
aBCDeFGH
AbCDeFGH
abCDeFGH
ABcDeFGH
aBcDeFGH
AbcDeFGH
abcDeFGH
ABCdeFGH
aBCdeFGH
AbCdeFGH
abCdeFGH
ABcdeFGH
aBcdeFGH
AbcdeFGH
abcdeFGH
ABCDEfGH
aBCDEfGH
AbCDEfGH
abCDEfGH
ABcDEfGH
aBcDEfGH
AbcDEfGH
abcDEfGH
ABCdEfGH
aBCdEfGH
AbCdEfGH
abCdEfGH
ABcdEfGH
aBcdEfGH
AbcdEfGH
abcdEfGH
ABCDefGH
aBCDefGH
AbCDefGH
abCDefGH
ABcDefGH
aBcDefGH
AbcDefGH
abcDefGH
ABCdefGH
aBCdefGH
AbCdefGH
abCdefGH
ABcdefGH
aBcdefGH
AbcdefGH
abcdefGH
ABCDEFgH
aBCDEFgH
AbCDEFgH
abCDEFgH
ABcDEFgH
aBcDEFgH
AbcDEFgH
abcDEFgH
ABCdEFgH
aBCdEFgH
AbCdEFgH
abCdEFgH
ABcdEFgH
aBcdEFgH
AbcdEFgH
abcdEFgH
ABCDeFgH
aBCDeFgH
AbCDeFgH
abCDeFgH
ABcDeFgH
aBcDeFgH
AbcDeFgH
abcDeFgH
ABCdeFgH
aBCdeFgH
AbCdeFgH
abCdeFgH
ABcdeFgH
aBcdeFgH
AbcdeFgH
abcdeFgH
ABCDEfgH
aBCDEfgH
AbCDEfgH
abCDEfgH
ABcDEfgH
aBcDEfgH
AbcDEfgH
abcDEfgH
ABCdEfgH
aBCdEfgH
AbCdEfgH
abCdEfgH
ABcdEfgH
aBcdEfgH
AbcdEfgH
abcdEfgH
ABCDefgH
aBCDefgH
AbCDefgH
abCDefgH
ABcDefgH
aBcDefgH
AbcDefgH
abcDefgH
ABCdefgH
aBCdefgH
AbCdefgH
abCdefgH
ABcdefgH
aBcdefgH
AbcdefgH
abcdefgH
ABCDEFGh
aBCDEFGh
AbCDEFGh
abCDEFGh
ABcDEFGh
aBcDEFGh
AbcDEFGh
abcDEFGh
ABCdEFGh
aBCdEFGh
AbCdEFGh
abCdEFGh
ABcdEFGh
aBcdEFGh
AbcdEFGh
abcdEFGh
ABCDeFGh
aBCDeFGh
AbCDeFGh
abCDeFGh
ABcDeFGh
aBcDeFGh
AbcDeFGh
abcDeFGh
ABCdeFGh
aBCdeFGh
AbCdeFGh
abCdeFGh
ABcdeFGh
aBcdeFGh
AbcdeFGh
abcdeFGh
ABCDEfGh
aBCDEfGh
AbCDEfGh
abCDEfGh
ABcDEfGh
aBcDEfGh
AbcDEfGh
abcDEfGh
ABCdEfGh
aBCdEfGh
AbCdEfGh
abCdEfGh
ABcdEfGh
aBcdEfGh
AbcdEfGh
abcdEfGh
ABCDefGh
aBCDefGh
AbCDefGh
abCDefGh
ABcDefGh
aBcDefGh
AbcDefGh
abcDefGh
ABCdefGh
aBCdefGh
AbCdefGh
abCdefGh
ABcdefGh
aBcdefGh
AbcdefGh
abcdefGh
ABCDEFgh
aBCDEFgh
AbCDEFgh
abCDEFgh
ABcDEFgh
aBcDEFgh
AbcDEFgh
abcDEFgh
ABCdEFgh
aBCdEFgh
AbCdEFgh
abCdEFgh
ABcdEFgh
aBcdEFgh
AbcdEFgh
abcdEFgh
ABCDeFgh
aBCDeFgh
AbCDeFgh
abCDeFgh
ABcDeFgh
aBcDeFgh
AbcDeFgh
abcDeFgh
ABCdeFgh
aBCdeFgh
AbCdeFgh
abCdeFgh
ABcdeFgh
aBcdeFgh
AbcdeFgh
abcdeFgh
ABCDEfgh
aBCDEfgh
AbCDEfgh
abCDEfgh
ABcDEfgh
aBcDEfgh
AbcDEfgh
abcDEfgh
ABCdEfgh
aBCdEfgh
AbCdEfgh
abCdEfgh
ABcdEfgh
aBcdEfgh
AbcdEfgh
abcdEfgh
ABCDefgh
aBCDefgh
AbCDefgh
abCDefgh
ABcDefgh
aBcDefgh
AbcDefgh
abcDefgh
ABCdefgh
aBCdefgh
AbCdefgh
abCdefgh
ABcdefgh
aBcdefgh
Abcdefgh
abcdefgh

--------------
sıfırları küçük birleri büyük harf farz edersek aynı sonucu vermiş olur.

void showbits(int x)
{
for (int i=7; i >= 0; --i)
if (x >> i & 1 == 1)
putchar('1');
else
putchar('0');
printf("
");
}
int main()
{
for(int x=0;x<256;++x)
showbits(x);
getchar();
return 0;
}

çıktı

00000000
00000001
00000010
00000011
00000100
00000101
00000110
00000111
00001000
00001001
00001010
00001011
00001100
00001101
00001110
00001111
00010000
00010001
00010010
00010011
00010100
00010101
00010110
00010111
00011000
00011001
00011010
00011011
00011100
00011101
00011110
00011111
00100000
00100001
00100010
00100011
00100100
00100101
00100110
00100111
00101000
00101001
00101010
00101011
00101100
00101101
00101110
00101111
00110000
00110001
00110010
00110011
00110100
00110101
00110110
00110111
00111000
00111001
00111010
00111011
00111100
00111101
00111110
00111111
01000000
01000001
01000010
01000011
01000100
01000101
01000110
01000111
01001000
01001001
01001010
01001011
01001100
01001101
01001110
01001111
01010000
01010001
01010010
01010011
01010100
01010101
01010110
01010111
01011000
01011001
01011010
01011011
01011100
01011101
01011110
01011111
01100000
01100001
01100010
01100011
01100100
01100101
01100110
01100111
01101000
01101001
01101010
01101011
01101100
01101101
01101110
01101111
01110000
01110001
01110010
01110011
01110100
01110101
01110110
01110111
01111000
01111001
01111010
01111011
01111100
01111101
01111110
01111111
10000000
10000001
10000010
10000011
10000100
10000101
10000110
10000111
10001000
10001001
10001010
10001011
10001100
10001101
10001110
10001111
10010000
10010001
10010010
10010011
10010100
10010101
10010110
10010111
10011000
10011001
10011010
10011011
10011100
10011101
10011110
10011111
10100000
10100001
10100010
10100011
10100100
10100101
10100110
10100111
10101000
10101001
10101010
10101011
10101100
10101101
10101110
10101111
10110000
10110001
10110010
10110011
10110100
10110101
10110110
10110111
10111000
10111001
10111010
10111011
10111100
10111101
10111110
10111111
11000000
11000001
11000010
11000011
11000100
11000101
11000110
11000111
11001000
11001001
11001010
11001011
11001100
11001101
11001110
11001111
11010000
11010001
11010010
11010011
11010100
11010101
11010110
11010111
11011000
11011001
11011010
11011011
11011100
11011101
11011110
11011111
11100000
11100001
11100010
11100011
11100100
11100101
11100110
11100111
11101000
11101001
11101010
11101011
11101100
11101101
11101110
11101111
11110000
11110001
11110010
11110011
11110100
11110101
11110110
11110111
11111000
11111001
11111010
11111011
11111100
11111101
11111110
11111111





< Bu mesaj bu kişi tarafından değiştirildi Guest-D992B0457 -- 9 Ağustos 2019; 12:56:16 >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @vonderplanitz
E
6 yıl
Onbaşı

Bende ona benzer şekilde yapmıştım.

#include <stdio.h>
#include <string.h>
#include <stdint.h>

int main(int a, char *argv[])
{
char *kelime = argv[1];
int uzn = strlen(kelime);
uint64_t maks = (1u << uzn) - 1;

uint64_t basla = -1;
do {
uint64_t deger = ++basla;
for(int i = 0; i < uzn; ++i) {
kelime &= ~0x20;
kelime |= (deger & 1) << 5;
deger >>= 1;
}
printf("%s\n", kelime);
}
while(basla != maks);
return 0;
}





< Bu mesaj bu kişi tarafından değiştirildi elektro_gadget_ -- 9 Ağustos 2019; 12:43:0 >

< Bu ileti mobil sürüm kullanılarak atıldı >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @Webtimes
G
6 yıl
Er

dh ye kod yazmak eziyet yazdığım kodlar siliniyor yada saçma <span> bişeyler çıkıyor

bu işlemi tek satırda yapan c kodu
< Resime gitmek için tıklayın >



T
6 yıl
Yarbay
Konu Sahibi

Konumuz yalın kod yazmak ancak esas amaç yeni programlama yöntemlerini etkili biçimde kullanmak. Durum böyleyken sen klasik C kodu yazdın. "{" ile başlayan sıralar dışında 16 sıralık senin C kodu Perl 6'da tek sıra :)

quote:

given my $d=3 {for 1..2**$d ->$e {print join("", map {$e +& (2**$_) ?? 1 !! 0}, 0..^$d)~" "}}


Çalışma anı:
< Resime gitmek için tıklayın >

Şimdi başka bir soru:
Paskal üçgenini basan kod yazınız.

5 değerinde Paskal üçgeni için örnek çıktılar:


$ python paskal-ucgen.py
[1]
[1, 1]
[1, 2, 1]
[1, 3, 3, 1]
[1, 4, 6, 4, 1]

$ perl6.exe paskal-ucgen.pl
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1


Sola yatık de arada virgül olan, dizi operatörü içeren çıktılar da olabilir ancak böyle çıktı daha iyi görünüyor dogal olarak.

Not: Paskal üçgeninin Wikipedia ile birlikte Internette birçok sitede çözümü var.





< Bu mesaj bu kişi tarafından değiştirildi Tuğkan-0153 -- 11 Ağustos 2022; 13:8:17 >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @Guest-D992B0457
T
6 yıl
Yarbay
Konu Sahibi

Raku'nun tek sıra kod ile yapılabilen birnesi, C'de 17 sıralık kodla yapmanın avantajını söyle ben de C kullanmaya başlayacağım :)





< Bu mesaj bu kişi tarafından değiştirildi Tuğkan-0153 -- 15 Eylül 2022; 0:37:7 >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @elektro_gadget_
E
6 yıl
Onbaşı

quote:

Orijinalden alıntı: Tuğkan-0153

Raku'nun tek sıra kod ile yapılabilen birnesi, C'de 17 sıralık kodla yapmanın avantajını söyle ben de C kullanmaya başlayacağım :)
Şaka dimi?



< Bu ileti mobil sürüm kullanılarak atıldı >
Bu mesaja 1 cevap geldi.
G
6 yıl
Er

https://forum.donanimhaber.com//mesaj/yonlen/139500699
< Resime gitmek için tıklayın >

tek satır





< Bu mesaj bu kişi tarafından değiştirildi Guest-D992B0457 -- 9 Ağustos 2019; 16:22:47 >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @vonderplanitz
T
6 yıl
Yarbay
Konu Sahibi

Kodu denedim, güzel düşünce, C'nin for döngüsü içinde birden komut komut içerme olanağını, ASCII koduna 32 ekleyince A -> a olması, bitsel aritmetiği iyi kullanıyor ancak kod kırılgan. Benim Windows taki GCC 5.1 ile ilk denemede doğru çalışmadı.
< Resime gitmek için tıklayın >





< Bu mesaj bu kişi tarafından değiştirildi Tuğkan-0153 -- 15 Eylül 2022; 0:38:16 >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @Guest-D992B0457
G
6 yıl
Er

devc++ uyarı dahi yok kod temiz
< Resime gitmek için tıklayın >

edit: x 256 yerine 2048 den küçükse yazman lazım.





< Bu mesaj bu kişi tarafından değiştirildi Guest-D992B0457 -- 9 Ağustos 2019; 17:1:22 >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @vonderplanitz
T
6 yıl
Yarbay
Konu Sahibi

Şaka doğal olarak ancak gerçeklik payı var: Karışık dizi, yazı işlemlerini C ile programlayarak yeni programcılık yöntemlerini öğrenmek yada kullanmak cok zor.

Gözünüze iliştiyse, Raku (eski adıyla Perl 6) for döngüsü kullanmadan dizileri işleyebiliyor de Haskell örnek alınarak eklenen yeni özellikler sayesinde dizi üzerinde en karışık işlemleri bile en kısa biçimde kodlayabiliyorsunuz. Bu özellikler Python'da yok.

Perl (5) bilen biri olarak Raku'da dizileri virgülsüz tanımlama özelliği ilgimi çektiği için öğreneyim dedim, yeni özelliklerini öyle açımlamaya başladım.

2-3 haftadır Raku kullanıyorum. Perl 5'te ('Ertunc', 'Fatma', 'Hasan') biçiminde tanımlanabilen string dizisi, Raku 'da <Ertunc Fatma Hasan> olarak tanımlanabiliyor, bu hem kolay okunan bir görüntü hem de pratik programlama olanağı sağlıyor.





< Bu mesaj bu kişi tarafından değiştirildi Tuğkan-0153 -- 11 Ağustos 2022; 13:12:18 >


Bu mesajda bahsedilenler: @elektro_gadget_
T
6 yıl
Yarbay
Konu Sahibi

printf'nin parantezini yanlış yerde kapatmışım düzeltince çalıştı ancak görülebildiği ölçüde yalnızca ardışık karakterler üzerinde çalışıyor dolayısıyla örneğin "importance" gibi bir sözcük üzerinde özdeş işlemi yaptırmak olası değil:

< Resime gitmek için tıklayın >

Neyse, sonraki soru üzerine yorumları alayım. Paskal üçgenini en kısa nasıl kodlayabilrsiniz :)





< Bu mesaj bu kişi tarafından değiştirildi Tuğkan-0153 -- 11 Ağustos 2022; 13:14:11 >


Bu mesajda bahsedilenler: @Guest-D992B0457
G
6 yıl
Er

char str[2][8]={{'A','B','C','D','E','F','G','H'},{'a','b','c','d','e','f','g','h'}};

bu tanımlamayı şöyle de yapabiliriz char str[2][10]={{"ABCDEFGH"},{"abcdefgh"}};

c dili belli amaçlar için oluşturulmadığı halde bukadar iş çıkarması nekadar başarılı olduğunu gösteriyor.


Bu mesaja 2 cevap geldi.
T
6 yıl
Yarbay
Konu Sahibi

C bilimsel problemleri kodlamak için değil, Unix'i programlamak üzere tasarlanmış.

Ha, tasarımı cok başarılı olduğundan temel bilimsel problemlerde de kullanılıyor o ayrı. Sonuçta problem biraz karışıklaştığında C zor durumda kalır.

paskal üçgenini Scheme ile kodladım. 10 sıra sürdü ancak pak sonuç verdi. Esasında paskal ücgeni C ile 10 satırı cok aşmayacak biçimde kodlanabilir ancka Scheme'de kodu yazarken deneme olanağı var, C'de yok o yüzden bu tür problemleri geliştirmek daha zor. Scheme'de üstteki pencerede yazıyorum 2 komutla anında alttaki pencerede kodu deneyebiliyorum:

< Resime gitmek için tıklayın >





< Bu mesaj bu kişi tarafından değiştirildi Tuğkan-0153 -- 11 Ağustos 2022; 13:16:35 >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @Guest-D992B0457
G
6 yıl
Yarbay

https://rosettacode.org/wiki/Pascal%27s_triangle#Perl_6

her dilde var





< Bu mesaj bu kişi tarafından değiştirildi Gökşen PASLI -- 13 Ağustos 2019; 12:12:2 >
Bu mesaja 1 cevap geldi.
G
6 yıl
Er

doğrusu bu koddan hiç bir şey anlamadım hazır fonksiyon varmı?

@Gökşen PASLI'nın verdiği linkte c diliyle hazır fonksiyon olmadan 6-7 satırla yapılmış.

void pascaltriangle(unsigned int n)
{
unsigned int c, i, j, k;

for(i=0; i < n; i++) {
c = 1;
for(j=1; j <= 2*(n-1-i); j++) printf(" ");
for(k=0; k <= i; k++) {
printf("%3d ", c);
c = c * (i-k)/(k+1);
}
printf("\n");
}
}


Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @vonderplanitz
T
6 yıl
Yarbay
Konu Sahibi

Paskal üçgeni Fibonacci dizisi ile özdeş ilerleyişe iye bir tek gösterimi değişik (wikipedia'da paskal - fibonacci ilişkisi gösteriliyor)

burada cok büyük olasılıkla fibonacci gibi matematiksel formül tanımı üzerinden giderek çözüyor olmalı ki bu programcı çözümünden cok matematik formulün C ile uygulanması oluyor başka deyişle bu çözümün programcılık açısından pek bir esprisi yok.

Onun bir altında C ile rekürsif çözüm var o iyi görünmekle beraber gerçek rekürsif çözüm değil cunku iterasyon (döngü) var, gerçek rekürsif kodda iterasyon olmaz. Daha ötesi paskal üçgenindeki bir önceki sırayı tutmak üzere bir integer dizisi daha tanımlıyor ki gerçek rekürsif çözümde ona da gerek kalmaz.

rekürsif çözümü doğru uygulayan Scheme kodu. Gözünüze iliştiyse o kodda hiçbir dizi yada listeyi önceden tanımlamıyor. Bununla beraber Scheme kodunda da birkaç eksik yakaladım, birincisi Scheme'deki isteğe bağlı (optional) argüman kullanarak kodu 3 sıra kısaltabilirsiniz, ikincisi ana işlemi iki rekürsif fonksiyona bölmek yerine yerine tek fonksiyon içinde duble rekürsif olarak da yazabilirsiniz böylelikle kod 2 sıra daha kısalabilir. Buradaki "kısaltma" ile amacımız kodun boyutunu kısaltmaktan cok, "daha az sayıda kod ile daha çok nes anlatmak" :)





< Bu mesaj bu kişi tarafından değiştirildi Tuğkan-0153 -- 11 Ağustos 2022; 13:21:41 >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @Guest-D992B0457
G
6 yıl
Er

rekürsif kodda neden döngü olmasın böyle bir kuralmı var?


Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @vonderplanitz
T
6 yıl
Yarbay
Konu Sahibi

Rekürsif kodun içinde döngü (iterasyon) olması futbol maçında topu elle oynamak gibi bir nes :)





< Bu mesaj bu kişi tarafından değiştirildi Tuğkan-0153 -- 11 Ağustos 2022; 13:22:38 >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @Guest-D992B0457
G
6 yıl
Er

quote:

Orijinalden alıntı: Tuğkan-0153

Rekürsif kodun içinde döngü (iterasyon) olması futbol maçında topu elle oynamak gibi bir nes :)
bu bakış açısı bana mazoşizmi hatırlattı yazımı en kolay performansı en iyi olan benim için en iyi koddur.


Bu mesaja 1 cevap geldi.
T
6 yıl
Yarbay
Konu Sahibi

Bakış açısı değil, teknik.

Universidad Rey Juan Carlos'tan CompSci PhD'li Manuel Rubio Sánchez ile Harvard'tan CompSci PhD'li Paul Graham, rekürsif kodlama tekniği üzerine anlatılar, tutoriallar yayınlamış, bu tekniğin iterasyona göre etkin de geleceğin programcılık tekniği olduğunu belirtmişler.

Sence ben onların bilgi ile deneyimine mi bakarım, yoksa her bir nesi C şablonunda çözmeye çalışan birinin bir twit uzunluğundaki yorumuna mı





< Bu mesaj bu kişi tarafından değiştirildi Tuğkan-0153 -- 11 Ağustos 2022; 13:26:26 >

< Bu ileti mini sürüm kullanılarak atıldı >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @Guest-D992B0457