• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 13:36
CEST 19:36
KST 02:36
  • 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
Code S Season 2 (2026) - RO8 Preview4[ASL21] Finals Preview: Two Legacies21Code S Season 2 (2026) - RO12 Preview2herO wins GSL Code S Season 1 (2026)7Code S Season 1 (2026) - RO4 & Finals Preview5
Community News
Weekly Cups (May 18-25): MaxPax wins doubles0Crank Gathers Season 4: BW vs SC2 Team League4Weekly Cups (May 11-17): Classic wins double0Code S Season 1 (2026) - RO8 Results2Weekly Cups (May 4-10): Clem, MaxPax, herO win1
StarCraft 2
General
herO wins GSL Code S Season 1 (2026) Code S Season 2 (2026) - RO8 Preview Weekly Cups (May 18-25): MaxPax wins doubles Code S Season 2 (2026) - RO12 Preview Weekly Cups (May 11-17): Classic wins double
Tourneys
GSL Code S Season 2 (2026) Sparkling Tuna Cup - Weekly Open Tournament Crank Gathers Season 4: BW vs SC2 Team League GSL Code S Season 1 (2026) Maestros of The Game 2 announcement and schedule !
Strategy
Custom Maps
[D]RTS in all its shapes and glory <3 [A] Nemrods 1/4 players
External Content
Welcome to the External Content forum Mutation # 527 Hell Train The PondCast: SC2 News & Results Mutation # 526 Rubber and Glue
Brood War
General
Pros React To: ASL S21 Finals Every Matchup's Top 5 Winrates (all ASLs & KSLs) BW General Discussion Very long shot - StarCraft x A7X video Pros React to: TvT Masterclass in FlaSh vs Light
Tourneys
[ASL21] Grand Finals Escore Tournament StarCraft Season 2 [BSL22] WB Final & LB Semis - Saturday 21:00 CEST [Megathread] Daily Proleagues
Strategy
Any training maps people recommend? Muta micro map competition [G] Hydra ZvZ: An Introduction Fighting Spirit mining rates
Other Games
General Games
Stormgate/Frost Giant Megathread Nintendo Switch Thread ZeroSpace Megathread Path of Exile Dawn of War IV
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
Vanilla Mini Mafia Mafia Game Mode Feedback/Ideas TL Mafia Community Thread Five o'clock TL Mafia
Community
General
US Politics Mega-thread Russo-Ukrainian War Thread Trading/Investing Thread Dating: How's your luck? European Politico-economics QA Mega-thread
Fan Clubs
The herO Fan Club!
Media & Entertainment
[Manga] One Piece Anime Discussion Thread [Req][Books] Good Fantasy/SciFi books
Sports
2024 - 2026 Football Thread McBoner: A hockey love story TeamLiquid Health and Fitness Initiative For 2023 Formula 1 Discussion
World Cup 2022
Tech Support
Facing Challenges in Mobile App Development streaming software
TL Community
The Automated Ban List
Blogs
Customization Drives Loyalty…
TrAiDoS
Why RTS gamers make better f…
gosubay
ramps on octagon
StaticNine
ASL S21 English Commentary…
namkraft
Customize Sidebar...

Website Feedback

Closed Threads



Active: 2686 users

The Big Programming Thread - Page 876

Forum Index > General Forum
Post a Reply
Prev 1 874 875 876 877 878 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.
Deleted User 3420
Profile Blog Joined May 2003
24492 Posts
Last Edited: 2017-04-22 14:56:57
April 22 2017 14:55 GMT
#17501
does dup2 follow fork?

if I dup2 to change stdin to say, a file for input
and then fork

does the child process use the file for input or is it pointing to the original stdin?
it points to the file for input, right?

so like, since I am making a shell program where each command forks a child process,

so if a user wants input redirection on the first command, and inputs multiple commands at once (say with &&), I need to fork, then dup in the child process, and then fork the next command from the parent not the child? that will work? or do I need to set stdin back to file descriptor 1?

basically I can't remember what is and isn't shared among all processes

is it that the open file TABLE is shared among all processes, but each process has it's own open file descriptor?
Thaniri
Profile Blog Joined March 2011
1264 Posts
Last Edited: 2017-04-22 23:43:53
April 22 2017 23:28 GMT
#17502
In C#, how can one make a line full of dashes in the console?

I'm trying to get the dashes lines to be as wide as the numbers being printed without simply hardcoding a number of dashes:

http://i.imgur.com/JQ2NyPo.jpg

+ Show Spoiler +


static void Main(string[] args)
{
printEvenSquaresCubesLoop();
printEvenSquaresCubesRescursive(0, 20);
}

static void printEvenSquaresCubesLoop()
{
int numSum = 0;
int squareSum = 0;
int cubeSum = 0;

Console.WriteLine("{0, 10} {1, 10} {2, 10}"
, "number"
, "square"
, "cube");
Console.WriteLine("--------------------------------");

for (int i = 0; i <= 20; i = i + 2)
{
Console.WriteLine("{0, 10} {1, 10} {2, 10}"
, i
, i * i
, i * i * i);
numSum += i;
squareSum += i * i;
cubeSum += i * i * i;
}

Console.WriteLine("--------------------------------");
Console.WriteLine("{0, 10} {1, 10} {2, 10}"
, numSum
, squareSum
, cubeSum);
}

static int printEvenSquaresCubesRescursive(int input, int max)
{
if(input >= max)
{
Console.WriteLine("{0, 10} {1, 10} {2, 10}"
, input
, input * input
, input * input * input);
return input;
}
else
{
Console.WriteLine("{0, 10} {1, 10} {2, 10}"
, input
, input * input
, input * input * input);
return input * printEvenSquaresCubesRescursive(input + 2, 20);
}

}
}


edit: updated code cause the recursive solution is also not going to be formatted so nicely :D
Manit0u
Profile Blog Joined August 2004
Poland17752 Posts
Last Edited: 2017-04-23 01:11:36
April 23 2017 01:10 GMT
#17503
On April 23 2017 08:28 Thaniri wrote:
In C#, how can one make a line full of dashes in the console?

I'm trying to get the dashes lines to be as wide as the numbers being printed without simply hardcoding a number of dashes:



int len = 20;
string str = '';
char pad = '-';

Console.WriteLine(str.PadLeft(len, pad)); // might as well be PadRight...
Time is precious. Waste it wisely.
Thaniri
Profile Blog Joined March 2011
1264 Posts
Last Edited: 2017-04-23 01:37:16
April 23 2017 01:30 GMT
#17504
I thought of that solution, but a problem occurs if instead of 10 iterations, I have to do 100 or 1000 iterations. The dashed line won't match up with the new wider columns.

edit: An idea I had was similar to MySQL select last_insert_id(). I wanted to get the last thing sent to standard output, grab the length of that, and then print out the dashes as required. This wouldn't work unfortunately though since I'm being asked to have a dashed line before and after the columns of numbers.
Manit0u
Profile Blog Joined August 2004
Poland17752 Posts
Last Edited: 2017-04-23 01:46:04
April 23 2017 01:35 GMT
#17505
Does the dashed line have to match the longest line from all lines or from a single set?

You can simply calculate the padding dynamically (instead of directly writing to the output, save it to a string and pass it's length to the padding).


// outside of loop
int longest = 0;
String p = '';

// inside loop
String s = String.Format("{0, 10} {1, 10} {2, 10}", input, input * input, input * input * input);
longest = s.Length > longest ? s.Length : longest;

Console.WriteLine(s);

// outside of loop
Console.WriteLine(p.PadLeft(longest, '-');
Time is precious. Waste it wisely.
Thaniri
Profile Blog Joined March 2011
1264 Posts
Last Edited: 2017-04-23 01:46:02
April 23 2017 01:44 GMT
#17506
My question was dumb

The reason my question is stupid in the first place is that the right aligned formatting is clever enough to figure out that I'm right aligning integers and allocates enough spaces to fit the maximum integer size. In this case it is perfectly valid to hard code the length of my dashed lines because no matter how small or big my inputs are the width of the columns is the same.

Oh well, that's what I get for trying to be smart.

edit: Thanks for your demo. It does teach me about String formatting in c# :D
Manit0u
Profile Blog Joined August 2004
Poland17752 Posts
April 23 2017 01:46 GMT
#17507
Updated the demo
Time is precious. Waste it wisely.
Hanh
Profile Joined June 2016
146 Posts
April 23 2017 02:38 GMT
#17508
 
new string(pad, len)


should work too
Manit0u
Profile Blog Joined August 2004
Poland17752 Posts
April 25 2017 14:34 GMT
#17509
My brain is fried. I need help with SQL again.

Select from single table. Relevant columns: position, status.

Select row with lowest position where all rows with lower position have certain status.
Time is precious. Waste it wisely.
Acrofales
Profile Joined August 2010
Spain18296 Posts
Last Edited: 2017-04-25 14:46:27
April 25 2017 14:41 GMT
#17510
Maybe you're not clear, but wouldn't

SELECT id, MIN(position) FROM table WHERE status != <certain status> GROUP BY status;

do it?

E: actually, because you may have more statuses than just the "certain status" and others, this won't give you just one row.

So I guess:


SELECT TOP 1 id, position FROM table WHERE status != <certain status> ORDER BY position ASC;

BluzMan
Profile Blog Joined April 2006
Russian Federation4235 Posts
April 25 2017 16:17 GMT
#17511
On April 25 2017 23:34 Manit0u wrote:
My brain is fried. I need help with SQL again.

Select from single table. Relevant columns: position, status.

Select row with lowest position where all rows with lower position have certain status.

Are you sure it's not `highest`?
You want 20 good men, but you need a bad pussy.
Manit0u
Profile Blog Joined August 2004
Poland17752 Posts
Last Edited: 2017-04-25 17:17:15
April 25 2017 17:15 GMT
#17512
On April 26 2017 01:17 BluzMan wrote:
Show nested quote +
On April 25 2017 23:34 Manit0u wrote:
My brain is fried. I need help with SQL again.

Select from single table. Relevant columns: position, status.

Select row with lowest position where all rows with lower position have certain status.

Are you sure it's not `highest`?


Nono, it's for queueing stuff. To simplify it let's assume that you have some jobs that need to be performed in order. I need to grab the next job in order, assuming that all previous jobs have the "done" status. I shouldn't get any results if even one job is "in progress".

Does this make any sense?

Example:

Job 1: position 1, status "done"
Job 2: position 2, status "done"
Job 3: position 3, status "ready"
Job 4: position 4, status "ready"

Need to get Job 3.

Example 3:

Example:

Job 1: position 1, status "done"
Job 2: position 2, status "in progress"
Job 3: position 3, status "ready"
Job 4: position 4, status "ready"

Should get empty result.
Time is precious. Waste it wisely.
enigmaticcam
Profile Blog Joined October 2010
United States280 Posts
Last Edited: 2017-04-25 19:15:41
April 25 2017 18:58 GMT
#17513
On April 26 2017 02:15 Manit0u wrote:Nono, it's for queueing stuff. To simplify it let's assume that you have some jobs that need to be performed in order. I need to grab the next job in order, assuming that all previous jobs have the "done" status. I shouldn't get any results if even one job is "in progress".

Does this make any sense?

Example:

Job 1: position 1, status "done"
Job 2: position 2, status "done"
Job 3: position 3, status "ready"
Job 4: position 4, status "ready"

Need to get Job 3.

Example 3:

Example:

Job 1: position 1, status "done"
Job 2: position 2, status "in progress"
Job 3: position 3, status "ready"
Job 4: position 4, status "ready"

Should get empty result.

Here's my suggestion, assuming jobs are always processed in order:
select * 
from (
select top 1 job
from table
where status != "done"
order by job asc
) a
where status != 'in progress'


If for some reason there's a possibility jobs are processed out of order, you would have to factor that in this way:
select * 
from (
select top 1 job
from table
where status != "done"
order by job asc
) a
where (select count(job) from table where status = 'In Progress') = 0
slmw
Profile Blog Joined October 2010
Finland233 Posts
April 25 2017 19:09 GMT
#17514
Job 8 might be in progress while job 7 is ready. Your query would select job 7 but ignore the fact that job 8 is in progress.
tofucake
Profile Blog Joined October 2009
Hyrule19215 Posts
Last Edited: 2017-04-25 19:10:44
April 25 2017 19:10 GMT
#17515
that won't work though, that will just pull the first ready job even if there's one in progress

sniped :<
Liquipediaasante sana squash banana
enigmaticcam
Profile Blog Joined October 2010
United States280 Posts
April 25 2017 19:10 GMT
#17516
Yes, just edited. If your choice of which job to run is granted only by means of this query, than it works just fine. But if you have other processes that might decide to start a job, the second one is best.
tofucake
Profile Blog Joined October 2009
Hyrule19215 Posts
April 25 2017 19:22 GMT
#17517
MySQL/Maria doesn't have top, you'd have to do

SELECT * FROM (SELECT * FROM `jobs` WHERE `status` != "done" ORDER BY `id` ASC LIMIT 1) a
WHERE (SELECT COUNT(`id`) FROM `jobs` WHERE `status` = 'in progress') = 0
Liquipediaasante sana squash banana
Thaniri
Profile Blog Joined March 2011
1264 Posts
Last Edited: 2017-04-26 01:38:08
April 26 2017 01:36 GMT
#17518
Attempt:+ Show Spoiler +
This is not correct syntax:

select job from
(select job from table group by status where status != "in progress" order by status desc)
limit 1;

lets say the way ordering works is (alphabetically):
done = 0
in progress = 1
ready = 2

This should select the first ready job but does not give you an empty result set if an in progress is found.


Unless you have bandwidth problems, why don't you use a programming language to find out if the returned data set contains "in progress"

select job, position, status from table where job = whatever;

Then in the application layer you can iterate over your result set and make a decision as needed.

Hanh
Profile Joined June 2016
146 Posts
April 26 2017 03:00 GMT
#17519
In MySQL,


select * from jobs where status = 'ready' and not exists (select * from jobs
where status = 'in progress') order by position limit 1;

Thaniri
Profile Blog Joined March 2011
1264 Posts
April 26 2017 03:11 GMT
#17520
Damn I forgot about the 'not exists' clause.
Prev 1 874 875 876 877 878 1032 Next
Please log in or register to reply.
Live Events Refresh
Next event in 1h 24m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
RotterdaM 379
mouzHeroMarine 258
elazer 205
UpATreeSC 123
ProTech80
BRAT_OK 64
StarCraft: Brood War
Britney 16587
Rush 284
BeSt 274
ggaemo 240
firebathero 163
Dewaltoss 101
Mind 48
sorry 30
Rock 28
IntoTheRainbow 24
[ Show more ]
Sacsri 20
Shine 13
Sexy 12
Dota 2
qojqva1892
Counter-Strike
fl0m1802
byalli421
edward15
Heroes of the Storm
XaKoH 117
MindelVK4
Other Games
Grubby2853
Liquid`RaSZi1067
Beastyqt598
Dendi461
ceh9310
Hui .223
ArmadaUGS112
C9.Mang094
Mew2King82
QueenE64
KnowMe59
Trikslyr58
Organizations
Counter-Strike
PGL269
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
[ Show 18 non-featured ]
StarCraft 2
• intothetv
• Kozan
• sooper7s
• Migwel
• AfreecaTV YouTube
• LaughNgamezSOOP
• IndyKCrew
StarCraft: Brood War
• 80smullet 26
• Michael_bg 6
• STPLYoutube
• ZZZeroYoutube
• BSLYoutube
Dota 2
• lizZardDota253
League of Legends
• Nemesis3726
• Jankos2384
• TFBlade1104
Other Games
• imaqtpie759
• Shiphtur110
Upcoming Events
OSC
1h 24m
Cham vs Percival
ShoWTimE vs Lambo
Krystianer vs sebesdes
Cure vs Babymarine
SKillous vs Arrogfire
Gerald vs MindelVK
goblin vs TBD
Jumy vs HonMonO
Replay Cast
6h 24m
Maestros of the Game
19h 24m
Big Brain Bouts
22h 24m
Shino vs Scarlett
Bly vs DnS
Serral vs ByuN
Replay Cast
1d 6h
RSL Revival
1d 13h
Lambo vs SHIN
Solar vs Rogue
herO vs Clem
Maestros of the Game
1d 17h
IPSL
1d 22h
ZZZero vs WorsT
Julia vs eOnzErG
BSL
2 days
TerrOr vs Dewalt
Bonyth vs eOnzErG
Replay Cast
2 days
[ Show More ]
RSL Revival
2 days
Maestros of the Game
2 days
OSC
2 days
IPSL
2 days
Dragon vs Artosis
dxtr13 vs Hawk
BSL
3 days
Wardi Open
3 days
Monday Night Weeklies
3 days
Replay Cast
4 days
Sparkling Tuna Cup
4 days
WardiTV Spring Champion…
4 days
Maestros of the Game
4 days
The PondCast
5 days
Maestros of the Game
5 days
Replay Cast
6 days
Replay Cast
6 days
WardiTV Spring Champion…
6 days
Maestros of the Game
6 days
Liquipedia Results

Completed

ASL Season 21
2026 GSL S1
Heroes Pulsing #1

Ongoing

2026 KK StarCraft Pro League
BSL Season 22
IPSL Spring 2026
KCM Race Survival 2026 Season 2
KK 2v2 League Season 1
Acropolis #4
CSCL: Masked Kings S4
SCTL 2026 Spring
WardiTV Spring 2026
2026 GSL S2
RSL Revival: Season 5
Stake Ranked Episode 2
CS Asia Championships 2026
Asian Champions League 2026
IEM Atlanta 2026
PGL Astana 2026
BLAST Rivals Spring 2026
IEM Rio 2026
PGL Bucharest 2026
Stake Ranked Episode 1
BLAST Open Spring 2026
ESL Pro League S23 Finals

Upcoming

Escore Tournament S2: King of Kings
YSL S3
BSL 22 Non-Korean Championship
CSLAN 4
Blizzard Classic Cup 2026
Kung Fu Cup 2026 Grand Finals
CranK Gathers Season 4: BW vs SC2 Team League
HSC XXIX
uThermal 2v2 2026 Main Event
Maestros of the Game 2
Bounty Cup 2026
BLAST Bounty Summer 2026
BLAST Bounty Summer Qual
Stake Ranked Episode 3
XSE Pro League 2026
IEM Cologne Major 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.