• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EST 01:53
CET 07:53
KST 15:53
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
[ASL22] Finals Preview: Sweet Victory!12[ASL22] Ro4 Preview: Mirror Mirror6[ASL22] Ro8 Preview: Within Reach5[ASL22] Ro8 Preview: In A Tizzy11[ASL22] Ro16 Preview: Holy Diver5
Community News
Weekly Cups (Oct 26 - Nov 1): MaxPax, herO, Solar win0Weekly Cups (October 19-25): Clem triples first in 5.0.175Evil Geniuses - shutting down23ISSL (IntoTheTV x SOOP SC2 League): Premier7Weekly Cups (October 12-18): 5.0.17 era begins1
StarCraft 2
General
Liquibets sc2 season 30 Evil Geniuses - shutting down Weekly Cups (Oct 26 - Nov 1): MaxPax, herO, Solar win No more SC2 streamers on team liquid? How do you feel about the mass reverts in the 5.0.17 PTR?
Tourneys
WardiTV Mondays ISSL (IntoTheTV x SOOP SC2 League): Premier Stellar Fest TWO the Moon (Dec 16-20) Sparkling Tuna Cup - Weekly Open Tournament RSL goes to London! 2026 Offline Finals Nov 21-22
Strategy
[H] ZvP Mid-Late Game: Stalkers Collossi HT
Custom Maps
[D] the control group Simple Questions/Answers [G] How to playtest arcade maps [A] Nemrods 1/4 players
External Content
Mutation # 550 Graveyard Shift The PondCast: SC2 News & Results Mutation # 549 Endless Sparkles Mutation # 548 Shining Bright
Brood War
General
BW General Discussion Rollback Netcode in Brood War Top Players of October 2026 (EBPD Rankings) [Megathread] Daily Funny Videos How SKT1 S-Tiers Felt To Be Swept By Flash
Tourneys
[$1250] International ShieldBattery League [Megathread] Daily Proleagues 2v2v2v2 Tournament Stage 1: Community Poll [IPSL] IPSL Winter 26-27 Ro24 is HERE!
Strategy
50,000-Word Terran Builds Memo 2026-10-22 Cliff Jump Revisited (1 in a 1000 strategy) Simple Questions, Simple Answers
Other Games
General Games
Nintendo Switch Thread Stormgate/Frost Giant Megathread Deus Ex 3!? Mobile Legends: Bang Bang Armies of Exigo - YesYes?
Dota 2
Dota 2 Champions League Season 3 Begins April 25!
League of Legends
[TL LoL EUW IHs] Teemo shall perish
Heroes of the Storm
Heroes of the Storm 2.0
Hearthstone
Deck construction bug
TL Mafia
TL Mafia Community Thread
Community
General
US Politics Mega-thread Canadian Politics Mega-thread Russo-Ukrainian War Thread Things Aren’t Peaceful in Palestine The Chess Thread
Fan Clubs
Fan Club Resource Thread Reynor Fan Club The Flash Fan Club
Media & Entertainment
Anime Discussion Thread Movie Discussion! [Manga] One Piece
Sports
Football (Soccer) Thread TeamLiquid Health and Fitness Initiative For 2023 MLB/Baseball 2023
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
Recent Gifted Posts
Blogs
Why I built Repalyzer (1.1.…
BlueStar
Innovate or Game Over?
TrAiDoS
ShieldBattery on Mac
Kraekkling
[ASL22] Ro4 Day1 Ticket Giv…
bITt.mAN
Can Bots Beat Pros?? Starcr…
namkraft
Customize Sidebar...

Website Feedback

Closed Threads



Active: 10919 users

The Big Programming Thread - Page 899

Forum Index > General Forum
Post a Reply
Prev 1 897 898 899 900 901 1032 Next
Thread Rules
1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution.
2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20)
3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible.
4. Use [code] tags to format code blocks.
Blisse
Profile Blog Joined July 2010
Canada3710 Posts
Last Edited: 2017-07-20 07:37:32
July 20 2017 07:37 GMT
#17961
On July 19 2017 10:02 dsyxelic wrote:
can anyone help a c noob?
--
say there is a text file with a string, say "abcdefghijk"

read in that file and delete a substring from it (have file update the new string)
--
is there a very simple way to do this?

so far all I got is fopen with the r+ mode and fgetc which doesn't seem to be what i'm looking for..

any easy to read resource or pointers(heh) for the best approach would be greatly appreciated. I've only gotten around to parsing individual strings from file or going by each character, but not substrings :/


The easiest way is: read the entire file into a string, delete the substring you want, and replace the file with the new string.
There is no one like you in the universe.
Nesserev
Profile Blog Joined January 2011
Belgium2760 Posts
July 21 2017 09:22 GMT
#17962
--- Nuked ---
Six.Strings
Profile Joined July 2017
48 Posts
July 31 2017 10:47 GMT
#17963
Not exactly programming but webdev:

I have a personal website for my CV etc. I made with HTML5, CSS and JS.

Now I want to apply internationally and I'm trying to figure out how to more elegantly switch languages on my site.
Thus far, I just copied the entire HTML file and replaced the German text with the English one, and the CSS and JS files linked to either one. Is there a more elegant solution to this?
Manit0u
Profile Blog Joined August 2004
Poland17869 Posts
Last Edited: 2017-07-31 12:13:20
July 31 2017 12:10 GMT
#17964
On July 31 2017 19:47 Six.Strings wrote:
Not exactly programming but webdev:

I have a personal website for my CV etc. I made with HTML5, CSS and JS.

Now I want to apply internationally and I'm trying to figure out how to more elegantly switch languages on my site.
Thus far, I just copied the entire HTML file and replaced the German text with the English one, and the CSS and JS files linked to either one. Is there a more elegant solution to this?


Are you using any backend? Any framework at all? Those usually come with such features built-in.

If you want to build it from scratch, then just load translations with JS.

1. Create button(s) to select language, all they should really do is just change a variable/cookie or whatever else where your store your language setting.
2. Create your translation files. YAML is amazing for this.
3. Create translation function using. Usually, this looks something like this:

var text = translate('some.property');

4. Use this function instead of regular text in your views.

Sample:


# locales/en.yml
messages:
welcome: 'Welcome!'

# locales/de.yml
messages:
welcome: 'Wilkommen!'

# my.js
const yaml = require('js-yaml');
const fs = require('fs');

try {
const translations = yaml.safeLoad(fs.readFileSync(locale + '.yml', 'utf8'));
} catch (e) {
console.error(e);
}

function translate(key) {
return getMessageByKey(translations, key);
}

function getMessageByKey(obj, key) {
if (!key) {
return obj;
}

var prop, props = key.split('.');

for (var i = 0, len = props.length - 1; i < len; i++) {
prop = props[i];

var candidate = obj[prop];

if (candidate !== undefined) {
obj = candidate;
} else {
break;
}
}

return obj[props[i]];
}


Or, you could just use this: http://www.openxrest.com/translatejs/
Time is precious. Waste it wisely.
dsyxelic
Profile Joined May 2010
United States1417 Posts
Last Edited: 2017-08-03 22:01:01
August 03 2017 19:28 GMT
#17965

# ********
# * *
# * **** *
# * * * *
# * * * *
# * * ** *
# * * *
# * ******
# 8x8 example

def spiral(rows, cols):
#print out a spiral similar to the one above given rows and cols
#can be a rectangle too


so this is a question I found off a mock interview and I've been stuck on it. Any ideas?


Also sorry for the ugly spiral up there, tried to format it so that it looks normal but eh.. looked fine on notepad and my ide so must be something with the spacing here

Edit: ok the spiral got destroyed lol, if it ppl dont get what it should look like ill upload a pic when i get home.

Basically must have empty spaces around it besides the box it came from and is going to
TL/SKT
Blisse
Profile Blog Joined July 2010
Canada3710 Posts
August 03 2017 19:58 GMT
#17966

# ********
# * *
# * **** *
# * * * *
# * * * *
# * * ** *
# * * *
# * ******


Something like this?
There is no one like you in the universe.
spinesheath
Profile Blog Joined June 2009
Germany8679 Posts
August 03 2017 20:55 GMT
#17967
Use the
[code]
tag to get that kind of formatting.
If you have a good reason to disagree with the above, please tell me. Thank you.
dsyxelic
Profile Joined May 2010
United States1417 Posts
August 03 2017 21:58 GMT
#17968
On August 04 2017 04:58 Blisse wrote:

# ********
# * *
# * **** *
# * * * *
# * * * *
# * * ** *
# * * *
# * ******


Something like this?


yes exactly
TL/SKT
Deckard.666
Profile Joined September 2012
152 Posts
Last Edited: 2017-08-03 23:26:34
August 03 2017 23:23 GMT
#17969
Kinda ugly, but it works.


def spiral(rows, cols):
matrix = [[' ' for _ in range(cols)] for _ in range(rows)]
dimensions = [rows, cols]
pos = [rows - 1, 0]
direction = [-1, 0]
k = 0
i = 0
while True:
t = 0
while (pos[i % 2] >= k or i in [1, 2]) and \
(pos[i % 2] < dimensions[i % 2] - k or i in [0, 3]):
t += 1
matrix[pos[0]][pos[1]] = "*"
pos[0] += direction[0]
pos[1] += direction[1]
if t <= 2:
break
pos[0] -= direction[0]
pos[1] -= direction[1]
direction = [direction[1], -direction[0]]
i = (i + 1) % 4
if i == 3:
k += 2
for row in matrix:
print(''.join(row))


edit: didnt work. Now it does :D
dsyxelic
Profile Joined May 2010
United States1417 Posts
August 04 2017 02:47 GMT
#17970
oh wow nice

besides an infinite loop in some test cases its generally pretty working

i have a hard time understanding your solution though, how does it work?
TL/SKT
Nesserev
Profile Blog Joined January 2011
Belgium2760 Posts
Last Edited: 2017-08-04 06:53:30
August 04 2017 06:42 GMT
#17971
--- Nuked ---
Deckard.666
Profile Joined September 2012
152 Posts
August 04 2017 16:50 GMT
#17972
On August 04 2017 11:47 dsyxelic wrote:
oh wow nice

besides an infinite loop in some test cases its generally pretty working

i have a hard time understanding your solution though, how does it work?


Damn, on what test cases does it get stuck?

Anyway, it simply starts in the bottom left corner, with direction up, and starts replacing cells with a '*' and advancing until its k cells away from the border, at which points it turns clockwise. In the first loop k=0, and in every loop of the spiral k increases by 2. When a side of the spiral has a length shorter than 2, it stops (as turning and printing would mess up the spiral).
Acrofales
Profile Joined August 2010
Spain18487 Posts
August 04 2017 18:14 GMT
#17973
How about:

def spiral(x, y):
if x <= 0 or y <= 0:
return
myspiral = [[0 for i in range(0, y)] for j in range(0, x)]
draw_outer(x, y, myspiral)
left_spiral(x - 2, y - 2, myspiral, x - 1, y - 1)
print_spiral(myspiral);

def left_spiral(x, y, myspiral, posx, posy):
if x <= 0:
return
posx = draw_left(x, myspiral, posx, posy)
if y <= 0:
return
posy = draw_up(y, myspiral, posx, posy)

right_spiral(x - 2, y - 2, myspiral, posx, posy)

def right_spiral(x, y, myspiral, posx, posy):
if x <= 0:
return
posx = draw_right(x, myspiral, posx, posy)
if y <= 0:
return
posy = draw_down(y, myspiral, posx, posy)
left_spiral(x - 2, y - 2, myspiral, posx, posy)

def draw_outer(x, y, myspiral):
posy = draw_up(y, myspiral, 0, y-1)
posx = draw_right(x, myspiral, 0, posy)
draw_down(y, myspiral, posx, posy)

def draw_down(y, myspiral, posx, posy):
for i in range(0, y):
myspiral[posx][posy + i] = 1;
return posy + y - 1;

def draw_up(y, myspiral, posx, posy):
for i in range(0, y):
myspiral[posx][posy - i] = 1;
return posy - y + 1;

def draw_right(x, myspiral, posx, posy):
for i in range(0, x):
myspiral[posx + i][posy] = 1;
return posx + x - 1;

def draw_left(x, myspiral, posx, posy):
for i in range(0, x):
myspiral[posx - i][posy] = 1;
return posx - x + 1;

def print_spiral(myspiral):
transposed = list(map(list, zip(*myspiral)))
for row in transposed:
rowstr = ""
for cell in row:
if cell > 0:
rowstr += "X"
else:
rowstr += " "
print rowstr


It's a bit verbose and would be a lot neater by making it object oriented, but I couldn't be bothered. I wasn't sure what the last little bit should look like, so left the guards at <= 0. Can be changed to <= 1 if a 2x2 square is never a desired outcome.
dsyxelic
Profile Joined May 2010
United States1417 Posts
August 04 2017 18:45 GMT
#17974
On August 05 2017 01:50 Deckard.666 wrote:
Show nested quote +
On August 04 2017 11:47 dsyxelic wrote:
oh wow nice

besides an infinite loop in some test cases its generally pretty working

i have a hard time understanding your solution though, how does it work?


Damn, on what test cases does it get stuck?

Anyway, it simply starts in the bottom left corner, with direction up, and starts replacing cells with a '*' and advancing until its k cells away from the border, at which points it turns clockwise. In the first loop k=0, and in every loop of the spiral k increases by 2. When a side of the spiral has a length shorter than 2, it stops (as turning and printing would mess up the spiral).


Nvm haha it was my ide bugging out, my bad.

Ah I see that makes sense. For reference this was asked in a mock for a new grad. The guy couldn't get it tho and the interviewer didnt give the solution so was wondering how to do it.
TL/SKT
mahrgell
Profile Blog Joined December 2009
Germany3943 Posts
August 08 2017 15:36 GMT
#17975
Terminology question:
I have some Distributed Matrix class, and I'm looking for good terms to describe all the "extra/background data" and the "core data".
core data = all the (distributed) Matrix entries, so basically the Matrix itself
extra/background data = all the data how the data is distributed, which threads contains what etc, some central quick access information (like matrix size etc)

I'm kinda sure there is some common terminology for this, but I simply can't find it .

PS: The real class is actually containing more than just a distributed Matrix, but is actually a collection of a few vectors Matrices etc, which for computational reasons are distributed in some special way, so "Matrix data" doesn't really work for "core data"



dekibeki
Profile Joined June 2011
Australia34 Posts
August 08 2017 17:06 GMT
#17976
On August 09 2017 00:36 mahrgell wrote:
Terminology question:
I have some Distributed Matrix class, and I'm looking for good terms to describe all the "extra/background data" and the "core data".
core data = all the (distributed) Matrix entries, so basically the Matrix itself
extra/background data = all the data how the data is distributed, which threads contains what etc, some central quick access information (like matrix size etc)

I'm kinda sure there is some common terminology for this, but I simply can't find it .

PS: The real class is actually containing more than just a distributed Matrix, but is actually a collection of a few vectors Matrices etc, which for computational reasons are distributed in some special way, so "Matrix data" doesn't really work for "core data"



Usually data about data is called metadata. So you're matrix information is your data, and the information saying where certain parts of the matrix are located would be metadata.
mahrgell
Profile Blog Joined December 2009
Germany3943 Posts
August 08 2017 17:16 GMT
#17977
On August 09 2017 02:06 dekibeki wrote:
Show nested quote +
On August 09 2017 00:36 mahrgell wrote:
Terminology question:
I have some Distributed Matrix class, and I'm looking for good terms to describe all the "extra/background data" and the "core data".
core data = all the (distributed) Matrix entries, so basically the Matrix itself
extra/background data = all the data how the data is distributed, which threads contains what etc, some central quick access information (like matrix size etc)

I'm kinda sure there is some common terminology for this, but I simply can't find it .

PS: The real class is actually containing more than just a distributed Matrix, but is actually a collection of a few vectors Matrices etc, which for computational reasons are distributed in some special way, so "Matrix data" doesn't really work for "core data"



Usually data about data is called metadata. So you're matrix information is your data, and the information saying where certain parts of the matrix are located would be metadata.


Thanks... that was exactly what I was looking for. Perfect.
Manit0u
Profile Blog Joined August 2004
Poland17869 Posts
Last Edited: 2017-08-08 23:05:32
August 08 2017 23:04 GMT
#17978
If you were to pick an answer to this question at random, what would be the chance of picking the right one?
a) 25%
b) 50%
c) 60%
d) 25%

Edit: Damn, I forgot we have the math thread now...
Time is precious. Waste it wisely.
Acrofales
Profile Joined August 2010
Spain18487 Posts
August 08 2017 23:06 GMT
#17979
On August 09 2017 08:04 Manit0u wrote:
If you were to pick an answer to this question at random, what would be the chance of picking the right one?
a) 25%
b) 50%
c) 60%
d) 25%

Edit: Damn, I forgot we have the math thread now...

Aren't you a funny guy...
Zocat
Profile Joined April 2010
Germany2229 Posts
August 09 2017 19:21 GMT
#17980
On August 09 2017 08:04 Manit0u wrote:
If you were to pick an answer to this question at random, what would be the chance of picking the right one?


Ill defined question. Wtf does "right one" mean?
Prev 1 897 898 899 900 901 1032 Next
Please log in or register to reply.
Live Events Refresh
PiGosaur Cup
10:00
#106
Liquipedia
[ Submit Event ]
Live Streams
Refresh
StarCraft: Brood War
BeSt 414
ProTech120
Dewaltoss 115
Noble 69
Aegong 37
Icarus 11
yabsab 11
Force[name] 4
LuMiX 0
League of Legends
JimRising 492
Counter-Strike
fl0m3238
Other Games
summit1g9750
XaKoH 687
C9.Mang0247
Organizations
Other Games
gamesdonequick484
Counter-Strike
PGL119
[ Show 13 non-featured ]
StarCraft 2
• practicex 43
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• Laughngamez YouTube
• Migwel
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• lizZardDota2217
League of Legends
• Lourlo879
• Stunt400
Upcoming Events
Kung Fu Cup
4h 7m
Replay Cast
16h 7m
The PondCast
1d 3h
KCM Race Survival
1d 3h
OSC
1d 7h
IntoTheTV X SOOP
3 days
Reynor vs Solar
ByuN vs SHIN
Clem vs MaxPax
herO vs Rogue
WardiTV Invitational
3 days
IPSL
3 days
WorsT vs nOmaD
Dewalt vs andersOn
AI Arena Tournament
3 days
IntoTheTV X SOOP
4 days
[ Show More ]
WardiTV Invitational
4 days
IPSL
4 days
Azhi_Dahaki vs ggnore13
Double vs WIZARD
Replay Cast
4 days
Replay Cast
5 days
Sparkling Tuna Cup
6 days
PiGosaur Cup
6 days
Liquipedia Results

Completed

Proleague 2026-11-02
Blizzard Classic Cup 2026
HCC Season 3

Ongoing

Acropolis #5
KCM Race Survival 2026 Season 4
International ShieldBattery League
BSL Season 23
IPSL Winter 2026-27
Calamity Cup Div. A Season 8
IEM Beijing 2026
PGL Masters Bucharest 2026
Stake Ranked Episode 5
1win Private Club #2
Thunderpick World Champ. '26
ESL Pro League Season 24
Stake Ranked Episode 4
1win Private Club #1
Logitech G Play Connect 2026
SL StarSeries Fall 2026
FISSURE Playground #3
BLAST Open Fall 2026
Esports World Cup 2026

Upcoming

1xBet Invitational
SC4ALL II: Brood War
BSL 23: Non-Korean Championship
HSC XXX
Stellar Fest 2: Lunar Cup
SC4ALL II: StarCraft II
Kung Fu Cup 2026 Grand Finals
RSL Offline Finals
Underdog Cup 2026 Div 2-3
PGL Bucharest 2027
BLAST Bounty Winter 2027
eXTREMESLAND 2026
PGL Major Singapore 2026
Stake Ranked Episode 6
BLAST Rivals Fall 2026
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.