Skip to content

Instantly share code, notes, and snippets.

View ozansulukpinar's full-sized avatar

Ozan Sülükpınar ozansulukpinar

View GitHub Profile
@ozansulukpinar
ozansulukpinar / Program.cs
Last active March 28, 2024 12:18
An example for the usage of Caesar Cipher
/*
Hızlı tüketim sektöründe faaliyet gösteren bir gıda firması, ürün ambalajları içerisine kod yerleştirerek, bu kodlar aracılığı ile çeşitli kampanyalar düzenlemek istemektedir. Proje aşağıda kısaca özetlenmiştir.
1. Firma aşağıdaki özelliklere sahip kodlar üretilmesini talep etmektedir.
• Kodlar 8 hane uzunluğunda ve unique olmalıdır.
• Kodlar ACDEFGHKLMNPRTXYZ234579 karakter kümesini içermelidir.
2. Kullanıcılar kampanya dönemi içerisinde çeşitli kanallar üzerinden ellerindeki kodları kullanarak kampanyalara katılabilecektir.
Beklenenler
• Kod üretimi belirlediğiniz bir algoritmaya uygun olarak yapılmalıdır.
• Kod geçerliliği veritabanı, array, hash table, file, redis, elastic gibi bir saklama ortamından kontrol edilmemeli sadece algoritmik olarak yapılmalıdır.
• Kodların tahmin edilerek sistemin manipüle edilme olasılığı yeterince düşük olmalıdır.
@ozansulukpinar
ozansulukpinar / AffineCipher.cs
Last active July 18, 2023 13:41
Affine Cipher Encoder
using System;
public class Program
{
static char[] lowerCaseLetters = new char[]{'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
public static void Main(string[] args)
{
string text = AffineCipher("Affine", 1, 1);
@ozansulukpinar
ozansulukpinar / bankholidaysinturkey.json
Last active November 20, 2023 21:20
A list of all bank holidays in Türkiye for subsquent two years
{
"all": {
"division": "all",
"events": [
{
"title": "New Year’s Day",
"date": "2024-01-01",
"notes": "",
"bunting": true
},
@ozansulukpinar
ozansulukpinar / calculator.js
Created December 22, 2022 18:54
A solution for Divisor Algorithm
// This script finds the greatest common divisor of two numbers
function findGreatestCommonDivisor(a, b){
var divisor = 1;
if(a < 0)
a *= -1;
if(b < 0)
b *= -1;
@ozansulukpinar
ozansulukpinar / RussianPeasantMultiplication.cs
Created January 26, 2022 19:46
Find multiplication of two numbers rapidly
using System;
public class Program {
public static void Main() {
int result = RussianPeasantMultiplication(121, 398);
Console.WriteLine(result);
}
private static int RussianPeasantMultiplication(int number1, int number2) {