Aviseringar
Rensa alla

Programmeringsutmaning mini: rövarspråket


Ämnesstartare

Varför måste jag hitta på utmaningarna? Nu är det nån annans tur!


   
SvaraCitera

Gentlernen:

Varför måste jag hitta på utmaningarna? Nu är det nån annans tur!

Älskar att alla är så passiva. [love]


   
SvaraCitera

Gentlernen:

Varför måste jag hitta på utmaningarna? Nu är det nån annans tur!

En enkel eftersom jag är lat:

Skriv ett program som läser in ett heltal x från standard in och räknar fram alla heltal a b och c så att a och b är benen i en triangel och c är hypotenusan. samt att a + b ska vara mindre än x.


   
SvaraCitera

grön_apa:

Skriv ett program som läser in ett heltal från standard in och räknar fram alla heltal a b och c så att a och b är benen i en triangel och c är hypotenusan. samt att a + b ska vara mindre än det tal som skrivs in.

talet man skriver in är C lr?


   
SvaraCitera

ankzor:

talet man skriver in är C lr?

Sorry för otydligheten. nej se ändring


   
SvaraCitera

grön_apa:

Sorry för otydligheten. nej se ändring

ursäkta, woot?

grön_apa:

heltal x

grön_apa:

räknar fram alla heltal a b och c


   
SvaraCitera

ankzor:

grön_apa: räknar fram alla heltal a b och c

:S jag är inte bäst just nu känner jag,

Hoppas detta blir bättre

skriv ett program som utifrån ett inmatat tal x beräknar a, b och c så att a + b + c < x och. samt att a och b tillsammans bildar en rätvinklig triangel med a och b som kateter och c som hypotenusa.

EDIT Nån mod får gärna ta bort ursprugliga formuleringen för att undvika förviring

Åtta:

utmaningar!


   
SvaraCitera

grön_apa:

Hoppas detta blir bättre

tack[y]


   
SvaraCitera
 import java.util.Scanner;

public class Pythagoras {


public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("Enter any number: ");
double x = scan.nextInt();
if(x > 0){
x = Math.sqrt(x);
double a = x/2;
double b = (x*0.3);
double c = Math.sqrt((a*a + b*b));
System.out.println(a);
System.out.println(b);
System.out.println(c);
System.out.println(a+b+c);

}
else System.out.print("FUUUU, ej negativa tal!!!");

}

}

Är ej speciellt bra på dessa saker, men det gör vad det stod att den skulle göra iaf [blush]


   
SvaraCitera
import java.util.Scanner;


public class Pythagoras {

public static void theCalculateMethod (double x){

x = Math.sqrt(x);
double a = x/2;
double b = (x*0.3);
double c = Math.sqrt((a*a + b*b));
System.out.println(a);
System.out.println(b);
System.out.println(c);
System.out.println(a+b+c);

}
public static void theInput (){
Scanner scan = new Scanner(System.in);
System.out.println("Enter any number: ");
double x = scan.nextInt();
if(x > 0){
theCalculateMethod(x);
theInput();
}
else System.out.print("FUUUU, ej negativa tal!!!");
theInput();

}
public static void main(String[] args) {

theInput();


}

}

mer kod, lättare dock.


   
SvaraCitera

ankzor:

Är ej speciellt bra på dessa saker, men det gör vad det stod att den skulle göra iaf [blush]

Jag är verkligen sämst inser jag :S Dold text: eller så skyller jag på att det är jobbigt att skriva saker på mobiltelefonens tangentbord.

Detta är övningen som jag hade tänkt mig.

läs in ett heltal x från användaren

räkna fram alla kombinationer av heltal a, b och c så att följande 2 krav uppfylls:

a +b +c < x

a*a + b*b = c*c


   
SvaraCitera
Åtta

grön_apa:

Detta är övningen som jag hade tänkt mig.

För mycket matte, för lite laser. Vägrar således utföra utmaningen (Dold text: till dess att jag på riktigt orkat sätta mig i hur jag ska lösa det).


   
SvaraCitera

Jo, känns som matematiksamband är dominerande i denna typ av problem. Sedan är det ofta typiska slå-upp-på-nätet-för-svar uppgifter : /

Här kommer en ganska naiv lösning på det i C dock för att ge mitt bidrag.


#include <stdio.h>

int main(int argc, char *argv[]) {
int x = atoi(argv[1]);

int a,b,c;
for (a=1; a<x; a++) {
for (b=a+1; b<x; b++) {
for (c=b+1; c<x; c++) {
if (a*a + b*b == c*c)
printf("a=%d, b=%d, c=%d
",a,b,c);
}
}
}

return 0;
}

   
SvaraCitera
Åtta

Eftersom jag hade tråkigt så gjorde jag väl motvilligt uppgiften ändå.

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys

def main(arg):
try:
integer = int(arg[1])
except (IndexError, ValueError):
print "Ange ett heltal som argument när du kör skriptet, spoling!"
return 0
for a in range(1,integer):
for b in range(1,integer):
for c in range(1,integer):
if ( ( a + b + c < integer ) and (a*a + b*b == c*c)):
print "a="+str(a)+" b="+str(b)+" c="+str(c)

if name == '__main__':
main(sys.argv)

   
SvaraCitera

obs, rövarspråk med prolog:

används: reuvar([p, e, n, i, s], Reuvarpenis). Reuvarpenis blir [p,o,p,e,n,o,n,i,s,o,s] ^_^

reuvar(Word, ReuvWord) :- reuvaOpp(Word, ReuvWord, [a,e,i,o,u,y,å,ä,ö]).

reuvaOpp([], _, _).
reuvaOpp([Letter|Rest], Final, Vokaler) :- member(Letter, Vokaler),
head(Letter, Final, Out), reuvaOpp(Rest, Out, Vokaler).
reuvaOpp([Letter|Rest], Final, Vokaler) :- ohead(Letter, Final, Out), reuvaOpp(Rest, Out, Vokaler).

head(Letter, Final, [Letter|Final]).
ohead(Letter, Final, [Letter, o, Letter|Final]).

minns inte riktigt om det bara var att skriva den där reuvar(penis),..) och har inte testat men borde funka.

- - - - - - - - - - - - - - - - - Sammanslagning 1 - - - - - - - - - - - - - - - - -

variabel:

ändrad 2 gånger

[blush][tard]


   
SvaraCitera