Align columns: Difference between revisions
Content added Content deleted
(Align columns in Yabasic) |
No edit summary |
||
Line 4,001: | Line 4,001: | ||
justified, right justified, or center justified within its column. |
justified, right justified, or center justified within its column. |
||
</pre> |
</pre> |
||
=={{header|Gambas}}== |
|||
Note: FB's NSLog, used for demonstrations, does not have a center alignment provision. However FB allows advanced alignment and text formatting in normal application development. Right and left alignment are shown here. |
|||
<lang futurebasic> |
|||
include "NSLog.incl" |
|||
local fn AlignColumn |
|||
'~'1 |
|||
NSUInteger i |
|||
CFStringRef testStr = @"Given$a$text$file$of$many$lines,$where$fields$within$a$line$are$delineated$by¬ |
|||
$a$single$'dollar'$character,$write$a$program$that$aligns$each$column$of$fields$by$ensuring$that$words¬ |
|||
$in$each$column$are$separated$by$at$least$one$space.$Further,$allow$for$each$word$in$a$column$to$be¬ |
|||
$either$left$justified$right$justified,$or$center$justified$within$its$column." |
|||
CFArrayRef temp = fn StringComponentsSeparatedByString( testStr, @"$" ) |
|||
CFMutableArrayRef arr = fn MutableArrayWithArray( temp ) |
|||
NSUInteger count = fn ArrayCount( arr ) |
|||
ptr a(50) |
|||
NSLog( @"\nLeft aligned:\n" ) |
|||
NSUInteger lineCheck = 1 |
|||
for i = 0 to count -1 |
|||
a( lineCheck ) = (ptr)fn StringUTF8String( arr[i] ) |
|||
if ( lineCheck == 9 ) |
|||
NSLog( @"%-12s %-11s %-12s %-11s %-12s %-12s %-12s %-12s %-12s", a(1),a(2),a(3),a(4),a(5),a(6),a(7),a(8),a(9) ) |
|||
lineCheck = 1 |
|||
else |
|||
lineCheck++ |
|||
end if |
|||
next |
|||
NSLog( @"\n\nRight aligned:\n" ) |
|||
lineCheck = 1 |
|||
for i = 0 to count -1 |
|||
a( lineCheck ) = (ptr)fn StringUTF8String( arr[i] ) |
|||
if ( lineCheck == 9 ) |
|||
NSLog( @"%12s %11s %12s %11s %12s %12s %12s %12s %12s", a(1),a(2),a(3),a(4),a(5),a(6),a(7),a(8),a(9) ) |
|||
lineCheck = 1 |
|||
else |
|||
lineCheck++ |
|||
end if |
|||
next |
|||
end fn |
|||
fn AlignColumn |
|||
HandleEvents |
|||
</lang? |
|||
{{output}} |
|||
<pre> |
|||
Left aligned: |
|||
Given a text file of many lines, where fields |
|||
within a line are delineated by a single 'dollar' |
|||
character, write a program that aligns each column of |
|||
fields by ensuring that words in each column are |
|||
separated by at least one space. Further, allow for |
|||
each word in a column to be either left |
|||
justified right justified, or center justified within its column. |
|||
Right aligned: |
|||
Given a text file of many lines, where fields |
|||
within a line are delineated by a single 'dollar' |
|||
character, write a program that aligns each column of |
|||
fields by ensuring that words in each column are |
|||
separated by at least one space. Further, allow for |
|||
each word in a column to be either left |
|||
justified right justified, or center justified within its column. |
|||
</pre> |
|||
=={{header|Gambas}}== |
=={{header|Gambas}}== |