Hirdetés
- Milyen billentyűzetet vegyek?
- Kormányok / autós szimulátorok topikja
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- OLED monitor topic
- OLED TV topic
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- ZIDOO médialejátszók
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Combos kis mini PC-vel jelentkezett a GMKtec
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
Új hozzászólás Aktív témák
-
Jester01
veterán
válasz
MacCaine #859 üzenetére
Először is kell egy táblázat, ami minden billentyűhöz megmondja a szomszédait. Aztán szépen rekurzívan bejárod adott hosszig, ügyelve, hogy ismétlődés ne legyen (már ha ez feltétel). Például valahogy így:
#! /bin/bash
len=3
declare -A layout
layout["a"]=qwsxz
layout["s"]=wedcxzaq
layout["d"]=erfvcxsw
layout["f"]=rtgbvcde
# ...
function process
{
local text="$1"
local options="$2"
local i
local letter
local newtext
local next
for ((i=0; i<${#options}; i+=1))
do
letter=${options:i:1}
if [ "${text/$letter/}" = "${text}" ]
then
newtext="${text}${letter}"
if [[ ${#newtext} == $len ]]
then
echo "$newtext"
else
next=${layout[$letter]}
if [[ ${#next} > 0 ]]
then
process "$newtext" "$next"
fi
fi
fi
done
}
for i in "${!layout[@]}"
do
process "" "$i"
done
Új hozzászólás Aktív témák
- Okosóra és okoskiegészítő topik
- Autós topik
- Milyen billentyűzetet vegyek?
- Motorola Edge 40 - jó bőr
- Kínai és egyéb olcsó órák topikja
- Battlefield 6
- Counter-Strike: Global Offensive (CS:GO) / Counter-Strike 2 (CS2)
- Már be is futott a Galaxy A17 5G
- Samsung Galaxy S23 Ultra - non plus ultra
- Gran Turismo
- További aktív témák...
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- Eladó Steam kulcsok kedvező áron!
- Azonnali kézbesítés az év bármely pillanatában
- Windows 10/11 Home/Pro , Office 2024 kulcsok
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- LG 48C4 - 48" OLED evo - 4K 144Hz - 0.1ms - NVIDIA G-Sync - FreeSync - HDMI 2.1 - A9 Gen7 CPU
- Huawei P20 Lite 64GB, Kártyafüggetlen, 1 Év Garanciával
- HP 440 G6 Intel i5-8265U laptop (Bekapcsoló gomb hibás)
- Oppo Reno7 5G 256GB, Kártyafüggetlen, 1 Év Garanciával
- HP EliteBook 820 G2 i5-6300U 8GB 256GB SSD 12.5" 1 év garancia
Állásajánlatok
Cég: FOTC
Város: Budapest