Page 1 of 1

Palindrom

Posted: 22/02-2006 20:50
by Gjesten
Hmm

Er det noen som vet hvordan man kan finne antall palindromer fra 1000 -> 9999 og summen på en rask måte?

Tungvindt å skrive opp 1001, 1221, 1331 osv... ;p

Bare lurer:)

På forhånd takk:)

Posted: 22/02-2006 21:55
by ingentingg
Viss du tenker litt først så går det greit.

Alle palindromene blir:

1001, 1111, ... 1991, 2002, ... 2992, .... 9999

Rekner med du skjønte det. Da ser du enkelt at det blir:

10*1000 + 10 *2000 + 10*3000 + ... + 10*9000 +
9*100 + 9*200 * ... + 9*900 +
9 * 10 + 9*20 + ... + 9*90 +
9*1 + 9*2 + ... + 9*9

Summen av de n første tallene er n(n+1)/2. Så da blir det enkelt og rekne ut summen

Posted: 23/02-2006 01:05
by Solar Plexsus
De firesifrede palindromene er tallene på formen xyyx der 1 ≤ x ≤ 9 og 0 ≤ y ≤ 9. Altså er antall palindrom mellom 1000 og 10000 lik 9*10 = 90.

Disse firesifrede palindromene er skrevet i titallssystemet, så palindromet xyyx er lik

1000x + 100y + 10y + x = 1001x + 110y.

Dermed blir summen av alle firesifrede palindrom

∑[sub]x=1->9[/sub]∑[sub]y=0->9[/sub] 1001x + 110y

= ∑[sub]x=1->9[/sub] ( 10*1001x + 110*∑[sub]y=0->9[/sub]y )

= ∑[sub]x=1->9[/sub] ( 10*1001x + 110*45 )

= 9*110*45 + 10*1001*∑[sub]x=1->9[/sub] x

= 9*110*45 + 10*1001*45

= 44550 + 450450

= 495000.

En kuriositet i denne sammenheng: Gjennomsnittet av palindromene mellom 1000 og 10000 er 495000/90 = 5500 som også er gjennomsnittet av 1000 og 10000.

Posted: 23/02-2006 11:38
by Gjesten
Solar Plexsus wrote:De firesifrede palindromene er tallene på formen xyyx der 1 ≤ x ≤ 9 og 0 ≤ y ≤ 9. Altså er antall palindrom mellom 1000 og 10000 lik 9*10 = 90.

Disse firesifrede palindromene er skrevet i titallssystemet, så palindromet xyyx er lik

1000x + 100y + 10y + x = 1001x + 110y.

Dermed blir summen av alle firesifrede palindrom

∑[sub]x=1->9[/sub]∑[sub]y=0->9[/sub] 1001x + 110y

= ∑[sub]x=1->9[/sub] ( 10*1001x + 110*∑[sub]y=0->9[/sub]y )

= ∑[sub]x=1->9[/sub] ( 10*1001x + 110*45 )

= 9*110*45 + 10*1001*∑[sub]x=1->9[/sub] x

= 9*110*45 + 10*1001*45

= 44550 + 450450

= 495000.

En kuriositet i denne sammenheng: Gjennomsnittet av palindromene mellom 1000 og 10000 er 495000/90 = 5500 som også er gjennomsnittet av 1000 og 10000.
Alright! Fikk ikke innlegget ovenfor til å stemme sjø. Summerte alle palindromene fra 1000->9999 bare for å sjekke. Tok tid!! :shock: Fikk forøvrig det samme som deg :)

Et spm til.. er du mattelærer på en høyskole/universitet? Virker som du har bra med matteskills :D

Posted: 24/02-2006 00:25
by Solar Plexsus
Summen av de 90 firesifrede palindromene blir 495000. Dette er enkelt å kontrollere ved et dataprogram. En annen måte å komme frem til denne summen på, er å ordne de 90 palindromene i par slik at summen av hvert par blir 2*5500 = 11000. Disse parene er på er på formen (xyyx,zwwz) der z=10-x og w=9-y med 1≤x≤4 og 0≤y≤9 (gir 40 palindrompar) eller (5yy5,5ww5) der w=9-y med 0≤y≤4 (gir 5 palindrompar). Summen av hvert palindrompar blir

(1001x + 110y) + (1001z + 110w)
= 1001(x + z) + 110(y + w)
= 1001*10 + 110*9
= 10010 + 990
= 11000.

Dermed blir summen av de 90 firesifrede palindromene

45*11000 = 495000.

Posted: 26/02-2006 13:50
by Gjesten
Hvordan blir dette i et dataprogram da?:O

Må man bruke løkker eller no..?

Posted: 26/02-2006 14:42
by Solar Plexsus
Det enkleste er nok å bruke løkker. Du vet at alle firesifrede palindrom er av formen xyyx og har tallverdi 1001x + 110y der 1 ≤ x ≤ 9 og 0 ≤ y ≤ 9. Dermed vil følgende BASIC-program beregne summen av de 90 firesifrede palindrom:

sum=0
for x=1 to 9
for y=0 to 9
sum = sum + 1001*x + 110*y
next y
next x
print sum

Posted: 26/02-2006 15:38
by Gjesten
Sånn i farten blir det vel noe alla dette (er hundre år siden jeg hadde java) :D


int sum = 1001*i + 110*j;

for ( int i =1; i < 9; i++ && int j = 0; j < 10; j++ )

{ System.out.print ("Summen av antall palindromer er:" + sum);

}

Posted: 26/02-2006 15:43
by Gjesten
Ups... mener j < 9