Sponsored Content
Full Discussion: problem in fibonacci series
Top Forums Shell Programming and Scripting problem in fibonacci series Post 302284348 by quirkasaurus on Thursday 5th of February 2009 11:02:41 AM
Old 02-05-2009
I suppose the point was to try and learn recursion in shell programming...
But why????

IMHO -- recursion is rarely necessary, and typically overly complex.

To that end, here is a non-recursive solution,
following the algorithm from: Wiki_Fibonacci_series

Code:
fibo()
{
num=$1

if [ $num -eq 0 ]; then
  print 0
  return
fi

if [ $num -eq 1 ]; then
  print 0, 1
  return
fi

print -n 0, 1

first=0
second=1

counter=2
while [ $counter -lt $num ]; do

  curr_total=$(( first + second ))
  print -n ", $curr_total"

  first=$second
  second=$curr_total

  counter=$(( counter + 1 ))

done

print

return
}





echo "enter a number: "
read x
echo "The fibonnacci series for value $x is:"
fibo $x

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Fibonacci series

Need code to run the Fibonacci series from 0 to 10 (16 Replies)
Discussion started by: nycol
16 Replies

2. AIX

FTP Speed Problem on IBM P-Series equiped with AIX 5.2

Hi, We have IBM P-Series servers (P690, P650) equiped with AIX 5.2. Further we have 10/100 MB ethernet cards in P650 and 10/100/1000 MB ethernet cards in P690 servers. Servers are on a LAN connected with Cisco 3750 catalyst switch. FTP from one server to another is very slow,,,even 3-4 MB... (3 Replies)
Discussion started by: aqeelcu@hotmail
3 Replies

3. Programming

C with MQ Series

Hi, Any one please let me know, how to write in to MQ Series through C. I tried, but it was vein, am expecting material(URL) or code. Thanks, Naga:cool: (5 Replies)
Discussion started by: Nagapandi
5 Replies

4. Shell Programming and Scripting

Shell script to generate Fibonacci series using recursion

I am facing problem with Shell script to generate Fibonacci series using recursion i.e. recursive function. Here is my script: #!/bin/sh fibo() { no=$1 if ; then return 0 elif ; then return 1 else a1=`expr $no - 1` fibo $a1 ... (10 Replies)
Discussion started by: Tapas Bose
10 Replies

5. Shell Programming and Scripting

Shell script to find the sum of first n Fibonacci numbers

pls give me the solution for this i need it for my exam pls pls pls Shell script to find the sum of first n Fibonacci numbers (1 Reply)
Discussion started by: Kshitija
1 Replies

6. Homework & Coursework Questions

Help with shell script to find sum of first n numbers of Fibonacci series

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known data: Shell script to find sum of first n numbers of Fibonacci series 2. Relevant commands, code, scripts,... (0 Replies)
Discussion started by: Kshitija
0 Replies

7. UNIX for Dummies Questions & Answers

Why does fibonacci sequence script stop making sense at 92nd iteration?

So, Just for practice, I wrote a simple fibonacci sequence script in bash. (03:08:02\$ cat fib #!/usr/bin/bash ret () { echo -ne "\n" sleep .5 } a=1 b=2 echo -n $a #1 A ret echo -n $b #2 B ret (8 Replies)
Discussion started by: DeCoTwc
8 Replies

8. Programming

Fibonacci (assembly)

When i run this with gcc filename.s -o filename. It is giving fatal error: Unknown opcode at define registers. Anyhelp will be appreciated .section ".data" prompt: .asciz "\nThis program prints the Fibonacci sequence" prompt2: .asciz "\nEnter a limit on the largest number to be displayed:"... (2 Replies)
Discussion started by: Learnerabc
2 Replies

9. Homework & Coursework Questions

program to find and print a Fibonacci sequence of numbers. --Errors

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known data: I am trying to convert a C language program over to Sparc Assembley and I am getting Undefined first referenced... (4 Replies)
Discussion started by: kenjiro310
4 Replies

10. Shell Programming and Scripting

Fibonacci series -going into infinite loop

Hello, I am a beginner to shell programming. Coded the following for Fibonacci series. #!/bin/bash fib() { i=0 j=1 arr=0 arr=1 echo "enter the limit:" read n while do fo= expr $j - 1 f1=$j f2= expr $j + 1 arr= expr ${arr} + ${arr} echo ${arr} (3 Replies)
Discussion started by: Rookie222
3 Replies
rlm_counter(5)							 FreeRADIUS Module						    rlm_counter(5)

NAME
rlm_counter - FreeRADIUS Module DESCRIPTION
The rlm_counter module provides a general framework to allow access based on accumulated usage of a resource, such as total time online in a given period, total data transferred in a given period, etc. This is very useful in a 'Prepaid Service' situation, where a user has paid for a finite amount of usage and should not be allowed to use more than that service. Collection, monitoring, and replenishment of prepaid services are beyond the scope of this module. The main configuration items to be aware of are: filename The filename where the usage data is stored. key An attribute which will be present in the Access-Request to be used as the 'index' value for the counter. A counter entry is tracked for each unique key. The most likely key you will want to use is User-Name. count-attribute An attribute which will be used to increment the counter value. If this attribute is Acct-Session-Time or an integer value the counter data is incremented by the Attribute value. For all other attribute types the counter is incremented by one. reset How frequently the counter data should be set back to 0. Valid values for this variable are: hourly, daily, weekly, monthly, orn- ever Alternatively, it can be user defined, in the form: num[hdwm]. num is a numeric value, followed by one or none of the follow- ing letters. h: hours, d: days, w: weeks, m: months. check-name This defines an attribute name which will be registered by the counter module and can be used to set the maximum allowed value for the counter after which the user is rejected. If Daily-Session-Time is set, you can use the following syntax in the Users file to set a cap of 3600 seconds ( 8 hours ): DEFAULT Max-Daily-Session := 3600 reply-name This is the name of the attribute which will contain the remaining value for the counter in the reply packet when the user is suc- cessfully authorized. The default attribute name is "Session-Timeout". allowed-servicetype This can be used to only apply the limitations to specific service types of sessions. For example, setting this to Framed-User will only apply the counter module to Framed sessions, excluding other types such as Telnet or Rlogin. cache-size The maximum size of the cache to be used by the module. The default is 1000. NOTES
This module registers an attribute, so it should be added to the instantiate section, to be called on server startup. When used in the authorize section, it must come after any modules which set the 'check-name' attribute. SECTIONS
instantiate, authorize, accounting FILES
/etc/raddb/radiusd.conf SEE ALSO
radiusd(8), radiusd.conf(5) rlm_sqlcounter(5) AUTHOR
Chris Parker, cparker@segv.org 13 March 2004 rlm_counter(5)
All times are GMT -4. The time now is 02:47 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy