• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 05:42
CEST 11:42
KST 18:42
  • 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
Team TLMC #5 - Finalists & Open Tournaments0[ASL20] Ro16 Preview Pt2: Turbulence10Classic Games #3: Rogue vs Serral at BlizzCon9[ASL20] Ro16 Preview Pt1: Ascent10Maestros of the Game: Week 1/Play-in Preview12
Community News
BSL 2025 Warsaw LAN + Legends Showmatch0Weekly Cups (Sept 8-14): herO & MaxPax split cups4WardiTV TL Team Map Contest #5 Tournaments1SC4ALL $6,000 Open LAN in Philadelphia8Weekly Cups (Sept 1-7): MaxPax rebounds & Clem saga continues29
StarCraft 2
General
#1: Maru - Greatest Players of All Time Weekly Cups (Sept 8-14): herO & MaxPax split cups Team Liquid Map Contest #21 - Presented by Monster Energy SpeCial on The Tasteless Podcast Team TLMC #5 - Finalists & Open Tournaments
Tourneys
Maestros of The Game—$20k event w/ live finals in Paris Sparkling Tuna Cup - Weekly Open Tournament SC4ALL $6,000 Open LAN in Philadelphia WardiTV TL Team Map Contest #5 Tournaments RSL: Revival, a new crowdfunded tournament series
Strategy
Custom Maps
External Content
Mutation # 491 Night Drive Mutation # 490 Masters of Midnight Mutation # 489 Bannable Offense Mutation # 488 What Goes Around
Brood War
General
Soulkey on ASL S20 ASL TICKET LIVE help! :D BW General Discussion NaDa's Body A cwal.gg Extension - Easily keep track of anyone
Tourneys
[ASL20] Ro16 Group D [ASL20] Ro16 Group C [Megathread] Daily Proleagues BSL 2025 Warsaw LAN + Legends Showmatch
Strategy
Simple Questions, Simple Answers Muta micro map competition Fighting Spirit mining rates [G] Mineral Boosting
Other Games
General Games
Stormgate/Frost Giant Megathread Nintendo Switch Thread Path of Exile Borderlands 3 General RTS Discussion Thread
Dota 2
Official 'what is Dota anymore' discussion LiquidDota to reintegrate into TL.net
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Heroes of StarCraft mini-set
TL Mafia
TL Mafia Community Thread
Community
General
US Politics Mega-thread Canadian Politics Mega-thread Things Aren’t Peaceful in Palestine Russo-Ukrainian War Thread UK Politics Mega-thread
Fan Clubs
The Happy Fan Club!
Media & Entertainment
Movie Discussion! [Manga] One Piece Anime Discussion Thread
Sports
2024 - 2026 Football Thread Formula 1 Discussion MLB/Baseball 2023
World Cup 2022
Tech Support
Linksys AE2500 USB WIFI keeps disconnecting Computer Build, Upgrade & Buying Resource Thread High temperatures on bridge(s)
TL Community
BarCraft in Tokyo Japan for ASL Season5 Final The Automated Ban List
Blogs
I <=> 9
KrillinFromwales
The Personality of a Spender…
TrAiDoS
A very expensive lesson on ma…
Garnet
hello world
radishsoup
Lemme tell you a thing o…
JoinTheRain
RTS Design in Hypercoven
a11
Evil Gacha Games and the…
ffswowsucks
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1575 users

The Big Programming Thread - Page 899

Forum Index > General Forum
Post a Reply
Prev 1 897 898 899 900 901 1031 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
Poland17341 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
Spain18050 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
Poland17341 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
Spain18050 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 1031 Next
Please log in or register to reply.
Live Events Refresh
Next event in 18m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
Rex 2
StarCraft: Brood War
Calm 5699
Bisu 731
Hyuk 162
HiyA 96
Hyun 96
sorry 86
ToSsGirL 84
Dewaltoss 82
Pusan 77
Light 74
[ Show more ]
Soma 60
actioN 56
Mini 49
ZerO 32
BeSt 30
Nal_rA 28
soO 27
Liquid`Ret 26
Sharp 24
Rush 19
Free 16
SilentControl 10
Dota 2
singsing1508
XcaliburYe237
boxi98170
League of Legends
JimRising 381
Counter-Strike
olofmeister1583
shoxiejesuss629
allub166
Other Games
XaKoH 143
NeuroSwarm75
Trikslyr15
Organizations
Other Games
gamesdonequick599
StarCraft: Brood War
lovetv 593
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 14 non-featured ]
StarCraft 2
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• iopq 1
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
League of Legends
• Jankos1421
• Stunt679
Other Games
• WagamamaTV81
Upcoming Events
RSL Revival
18m
Maru vs Reynor
Cure vs TriGGeR
Rex2
Map Test Tournament
1h 18m
The PondCast
3h 18m
RSL Revival
1d
Zoun vs Classic
Korean StarCraft League
1d 17h
BSL Open LAN 2025 - War…
1d 22h
RSL Revival
2 days
BSL Open LAN 2025 - War…
2 days
RSL Revival
3 days
Online Event
3 days
[ Show More ]
Wardi Open
4 days
Monday Night Weeklies
4 days
Sparkling Tuna Cup
5 days
LiuLi Cup
6 days
Liquipedia Results

Completed

Proleague 2025-09-10
Chzzk MurlocKing SC1 vs SC2 Cup #2
HCC Europe

Ongoing

BSL 20 Team Wars
KCM Race Survival 2025 Season 3
BSL 21 Points
ASL Season 20
CSL 2025 AUTUMN (S18)
LASL Season 20
RSL Revival: Season 2
Maestros of the Game
StarSeries Fall 2025
FISSURE Playground #2
BLAST Open Fall 2025
BLAST Open Fall Qual
Esports World Cup 2025
BLAST Bounty Fall 2025
BLAST Bounty Fall Qual
IEM Cologne 2025
FISSURE Playground #1

Upcoming

2025 Chongqing Offline CUP
BSL World Championship of Poland 2025
IPSL Winter 2025-26
BSL Season 21
SC4ALL: Brood War
BSL 21 Team A
Stellar Fest
SC4ALL: StarCraft II
EC S1
ESL Impact League Season 8
SL Budapest Major 2025
BLAST Rivals Fall 2025
IEM Chengdu 2025
PGL Masters Bucharest 2025
MESA Nomadic Masters Fall
Thunderpick World Champ.
CS Asia Championships 2025
ESL Pro League S22
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 © 2025 TLnet. All Rights Reserved.