Aviseringar
Rensa alla

Programmeringsutmaning mini: rövarspråket


Försökte göra det i PHP (och Ruby), men jag lyckas tyvärr inte ... Sorgligt. 🙁


<?php

$word = $_POST['word'];
$wordLength = strlen($_POST['word']) + 1;

$con = array("b", "c", "d", "f", "g", "h", "j", "k", "l", "m", "n", "p", "q", "r", "s", "t", "v", "x", "z",
"B", "C", "D", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "V", "X", "Z");

for ($i = 0; $i < $wordLength; $i++) {
if (in_array($word[$i], $con)) {
$w = strval($word[$i]);
$word[$i] = $w."o".$w;
}
}

echo $word;

?>

   
SvaraCitera
Åtta

Lambda89:

Försökte göra det i PHP (och Ruby), men jag lyckas tyvärr inte ... Sorgligt. 🙁

Nu var det 5 år sedan jag sist skrev någon PHP egentligen, men här är en version som bör fungera.

<?php
$word = $_GET['word'];
$wordLength = strlen($word);

$con = array("b", "c", "d", "f", "g", "h", "j", "k", "l", "m", "n", "p", "q", "r", "s", "t", "v", "x", "z",
"B", "C", "D", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "V", "X", "Z");

for ($i = 0; $i < $wordLength; $i++) {
$w = strval($word[$i]);
if (in_array($word[$i], $con)) {
$outword = $outword.$w."o".strtolower($w);
}
else {
$outword = $outword.$w;
}
}

echo $outword;
?>

   
SvaraCitera

Åtta:

Nu var det 5 år sedan jag sist skrev någon PHP egentligen, men här är en version som bör fungera.

Ah ... man slår in det i en ny sträng, istället för att försöka ersätta strängkomponenterna. Smart. [smile]

Jag ska pröva när jag får tid.


   
SvaraCitera
Åtta

Lambda89:

Ah ... man slår in det i en ny sträng, istället för att försöka ersätta strängkomponenterna.

Ja. Annars så blir det fel i den iteration som kommer efter en konsonant. D.v.s. om vi skulle köra ordet "kuk":

Iteration 1:
$i = 0
$w = "k"
$word = "kokuk"

Iteration 2:
$i = 1
$w = "o"
$word = "kokuk"

Iteration 3:
$i= 2
$w = "k"
$word = "kokokuk"

När det egentligen skulle blivit "kokukok".


   
SvaraCitera

Den här tråden får mig att känna mig korkad.


   
SvaraCitera

Åtta:

Ja. Annars så blir det fel i den iteration som kommer efter en konsonant. D.v.s. om vi skulle köra ordet "kuk":

Det var just det problemet jag inte fick huvudet runt. För att vara helt ärlig lyckades jag inte ens identifiera det problemet när jag körde det i Ruby.

Tack för kunskapen.


   
SvaraCitera
Ämnesstartare

variabel:

obs, rövarspråk med prolog:

Awesome!

Vore det för svårt med en utmaning som går ut på att skriva ett program som, matad med lite exempeltext, kan producera någorlunda naturliga meningar?


   
SvaraCitera
sylar

ankzor:

me whants moar utmaningar!

Detta kanske skriker lite standarduppgift, vet inte jag. Fast en rolig uppgift i allmänhet.
1. Läs in ett heltal.
2. Skriv ut dess hexadecimala värde och binära värde.

Exempel:
Input: 13
Output: D, 1101

Input: 67899
Output: 1093B, 10000100100111011


   
SvaraCitera
Åtta

sylar:

1. Läs in ett heltal.
2. Skriv ut dess hexadecimala värde och binära värde.

#!/usr/bin/env python
# -*- coding: utf-8 -*-
while True:
try:
integer = int(raw_input("Ange ett heltal:
"))
break
except ValueError:
print "Ange ett heltal i siffror, slyngel!"
print "Hexadecimal: "+str(hex(integer))
print "Binär: "+str(bin(integer))

Gentlernen:

Vore det för svårt med en utmaning som går ut på att skriva ett program som, matad med lite exempeltext, kan producera någorlunda naturliga meningar?

Det låter som en för svår utmaning, ja.


   
SvaraCitera
sylar

Åtta:

kod

Fusk att använda inbygga hex- och binarykonverteringsfunktioner ju : (

Gentlernen:

Vore det för svårt med en utmaning som går ut på att skriva ett program som, matad med lite exempeltext, kan producera någorlunda naturliga meningar?

Ingen aning, aldrig gjort något liknande faktiskt, men det låter svårt.


   
SvaraCitera
Åtta

sylar:

Fusk att använda inbygga hex- och binarykonverteringsfunktioner ju : (

Är det ju inte! [no-no] Använder bara vad språket tillhandahåller. Att inte göra det vore korkat.


   
SvaraCitera
sylar

Åtta:

Är det ju inte! [no-no] Använder bara vad språket tillhandahåller. Att inte göra det vore korkat.

Aight nigga, -0x1 points for using the brown sugar.

edit:
Närå... men jag tänkte att utmaningen var att skapa kod som gjorde detta.


   
SvaraCitera

Eftersom jag inte hade något att göra skrev jag ihop ett program i C, som jag lägger upp på pastebin eftersom jag kan inte hitta hur man får till bra kodformatering med hjälp av taggar:
http://pastebin.com/raw.php?i=2JySqbQs


   
SvaraCitera
Åtta

Holger Meins:

eftersom jag kan inte hitta hur man får till bra kodformatering med hjälp av taggar:

[ pre ] [/ pre ]

Jag har tänkt lägga till det i UM++ i ungefär hundra år, men jag glömmer hela tiden bort det.


   
SvaraCitera

Isåfall så:

#include <stdio.h>

void dec_to_bin(int p){
if(p > 0){
dec_to_bin(p/2);
printf("%d", p%2);
}
}

int main() {
int p = 0;

scanf("%d", &p);

printf("
%X, ", p);
dec_to_bin(p);

return 0;
}

   
SvaraCitera